跳转到内容

WebObjects/开发工具/通过 Apache 运行

来自维基教科书,开放书籍,开放世界

如果您使用类似于 https://127.0.0.1:45437/cgi-bin/WebObjects/AppName.woa/ 的 URL 访问您的应用程序(xxx:portnum 而不是 xxxx/-portnum)... 那么您正在使用 邪恶的直接连接。请参阅该页面了解您为什么不希望使用直接连接。请参阅此页面了解如何停止。


开启 Apache

[编辑 | 编辑源代码]

转到系统偏好设置 -> 共享 -> 服务,如果尚未开启,则开启个人网页共享

编辑 Apache 配置

[编辑 | 编辑源代码]

注意:不要尝试在此步骤中使用您的机器的 Bonjour / Rendezvous 名称。这会导致问题。接受这一点,甚至不要尝试。我已经警告过你。

编辑/etc/httpd/httpd.conf,找到包含ServerName的行,并将其更改为以下内容

ServerName localhost

该行默认情况下可能已被注释掉。您只需取消注释(删除开头的井号),然后重新启动 apache

sudo apachectl restart

告诉 wotaskd 也使用本地主机

[编辑 | 编辑源代码]

编辑/System/Library/WebObjects/JavaApplications/wotaskd.woa/Contents/Resources/Properties

WOPort=1085之后添加此行

WOHost=localhost

现在您需要重新启动 wotaskd

sudo systemstarter stop "WebObjects Services"
sudo systemstarter start "WebObjects Services"

如果您的 WebObjects 安装以这种方式启动,则使用 launchctl 重新启动 wotaskd 和 womonitor。

最后,配置您的应用程序

[编辑 | 编辑源代码]

添加或编辑这些启动参数

–WODirectConnectEnabled false
-WOHost localhost
-WOAdaptorURL https://127.0.0.1/cgi-bin/WebObjects
–WOPort 5555

WOPort 是可选的,但如果您希望为书签等设置一致的 URL,则很有用。您可以使用任何您想要的数字,但它需要在您启动的每个应用程序(或者更确切地说,您一次只能在给定的 WOPort 上运行一个应用程序实例)中是唯一的。在 WOLips 中,WOPort、WODirectConnectEnabled 和 WOAdaptorURL 已经存在,只需要更新。WOHost 不存在,需要添加。名称前面的破折号(“-WOHost”)很重要,并且必须在设置名称中才能使其正常工作。

您可能希望在全局 WOLips 设置中设置此项,这样您就不必每次创建新的启动配置时都设置它。即使您在全局设置中设置了此项,您也需要返回并使用这些设置修改现有的启动配置。全局设置仅适用于新创建的启动配置。

华夏公益教科书