谁了解AppWeb HTTP服务器及其嵌入式PHP?

4
在寻找一个快速但舒适的Web服务器时,我进入了EmbedThis(TM) AppWeb(TM) HTTP服务器的主页。这个服务器有两种许可模式,GPLv2和商业支持版。
乍一看,它看起来不错:占用空间不太大,速度快,有很多配置选项。最重要的是使用内置的PHP库进行快速PHP执行。不幸的是,这个PHP库并没有包括每个选项,特别是我需要用于I18N的“gettext”。
我的目标平台是基于ARM的CPU的嵌入式设备上的Linux。有人有以上提到的问题的经验吗?
此致 敬礼, Andi
4个回答

2

二进制发行版包含PHP,但源代码发行版不包括。Appweb包括一个依赖于libphp5发行版的PHP处理程序。

您需要下载PHP并自行构建。以下是Embedthis使用的PHP配置选项:

--disable-debug --disable-rpath --disable-cli --enable-bcmath --enable-calendar \
--enable-maintainer-zts --enable-embed=shared --enable-ftp \
--enable-inline-optimization --enable-magic-quotes --enable-safe-mode \
--enable-sockets --enable-wddx --sysconfdir=/etc/appweb \
--with-pic --with-exec-dir=/etc/appweb/exec --with-regex=system --with-pear \
--with-xmlrpc --with-zlib

如果您自己构建,请将libphp5复制到bin/lib目录中并重新启动。
最后,Embedthis在https://github.com/embedthis/packages上保存了一个包快照存储库。其中包括Appweb和Ejscript使用的所有软件包。

2
不是吗?lighttpd不能在嵌入式平台上运行吗?它通过FastCGI支持PHP。如果不行,那么thttpd可能是一个可行的解决方案(通过CGI运行PHP)。
或者,您可以查看轻量级Web服务器文章中提到的服务器,看看是否有比这些更适合您的需求的服务器。

我在列表中有这些备选项;我想测试不同的包并比较性能、占用空间、功能等。我阅读了IBM的文章,这是一个非常好的开始! - Andi

1

我检查了源代码,发现其中没有包含PHP(只有一个用于Web服务器本身的处理程序)。 我猜你下载的是二进制文件,而捆绑的PHP版本没有包括gettext。

你需要自己编译PHP,这样做时可以包含你想要的扩展。


1

他们的FAQ条目详细介绍了如何用另一种PHP版本替换内置库,以及如何在内置PHP处理程序中启用更多功能。这在默认的(html)文档中并不明显,这些文档在安装后的docroot(localhost:7777)中。

只需查看提到的git存储库,编辑Makefile(基本上是Zend的包装器),并包括mbstring或其他所需内容。默认构建非常简单。

这将创建一个新的libphp.so供Appweb使用。

很高兴看到另一个Appweb的粉丝,它是一个非常有用的工具。


这么简单吗?非常感谢,我会尝试这个! - Andi
明白了!虽然有些困难,但现在它已经运行了。我可以去除每个不必要的选项。非常感谢你! - Andi
1
@Andi - 是的,一旦你把它搞定了,它真的很棒。现在你已经有了“刚好够用”的PHP来满足你的需求 :) Appweb是一个非常酷的项目。 - Tim Post

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接