我刚刚在全新安装的 Ubuntu 10.04.2 上编译了 Apache 2.2.17。这是一个学习练习,旨在发现编译某些内容时实际发生的情况,而不仅仅是使用 apt-get,因此避免使用 apt-get 而有利于自己编译该内容。
I ran:
sudo ./configure --prefix=/etc/apache --enable-module=so --enable-rule=SHARED_CORE --enable-shared=max --enable-ssl=shared --enable-rewrite=shared
接下来是强制性的:
sudo make && sudo make install
一切似乎都很顺利(Apache 启动没有问题),除了在 Apache 模块目录中,我本来希望看到 mod_rewrite.so 和 mod_ssl.so,但我看到:
#cd /etc/apache/modules
#ls -l
mod_rewrite.a
mod_rewrite.la
mod_ssl.a
mod_ssl.la
如何将它们转换为 .so 文件,以便可以将它们与 Apache 配置中的 LoadModule 链接?
提前致谢。
您不应该以 root 身份运行所有内容。./configure
and make
无需 root 权限即可正常工作,make install
需要 root 权限才能写入目录,例如/etc
and /usr/bin
.
/etc
不适合可执行文件,更不用说完整的 Apache 安装了。如果您想将配置文件放入/etc/apache
, 使用--sysconfdir=/etc/apache
。安装自定义构建 Apache 的正确位置是/usr/local
.
要启用共享模块,您必须传递--enable-so
选项,应将应编译为共享的模块添加到--enable-mods-shared
.
Apache + mod_ssl(共享模块)+ mod_rewrite(共享模块)的正确配置行安装在/usr/local/apache
配置文件在/etc/apache
:
./configure --prefix=/usr/local/apache --sysconfdir=/etc/apache --enable-so \
--enable-rewrite --enable-ssl --enable-mods-shared='rewrite ssl'
成功配置 Apache HTTPd 后,运行make
其次是sudo make install
.
有关配置选项的更多信息可以在Apache HTTPd 文档.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)