我知道Entreprise Pharo一书中有一个很好的解释,可以通过Linux服务器进行部署生产。我按照教程,并能够部署相同的项目。然而,该项目只包含一个简单的类' MyFirstWebApp'并没有包括Seaside框架。运行脚本如下:
ZnServer defaultOn: 8080.
ZnServer default logToStandardOutput.
ZnServer default delegate
map: 'image'
to: MyFirstWebApp new;
map: 'redirect-to-image'
to: [ :request | ZnResponse redirect: 'image' ];
map: '/'
to: 'redirect-to-image'.
ZnServer default start
。
如果您的项目包含许多使用Seaside框架的课程,那该怎么办?我为自己的Seaside项目重复了相同的过程,但是当我使用以下命令WARequestContextNotFound
启动run.st脚本时,我收到消息错误./pharo myapp.image run.st
。有什么想法吗?
答案 0 :(得分:6)
您将纯Zinc服务器代理的使用与Seaside应用程序的处理混合在一起。 Zinc提供了一个"服务器适配器"对于Seaside,可以使用'\2'
(或您选择的任何端口)进行设置。
如果您想运行Seaside Web应用程序,则必须部署一个安装了Seaside框架的图像,以及您自己的类(ZnZincServerAdaptor startOn: 8080
和朋友)。
所以你的MyFirstWebApp
看起来更像是:
run.st