我没有访问这个共享主机上的httpd.conf文件,但我想看看哪些模块被启用/安装。 有没有一个(简单)的方法来找出没有访问httpd.conf文件? 例如,使用PHP,您可以运行一个包含phpinfo()的文件来获取PHP信息。 任何类似的东西? Web服务器是lighttpd,据我所知,它大多与apache httpd兼容。
(是的,我要通过电子邮件的托pipe支持,但它肯定会很高兴知道未来)
Lighttpd有类似的function,但是谁告诉你configuration文件是直接兼容的吸烟的东西。 您不能使用lighttpd使用.htaccess文件。
configuration文件是完全不同的,而fastcgi的工作原理类似,一旦你有它的工作,你不能只是放弃Apache的configuration到lighttpd,并期望他们的工作。
实际上,您可以预期安装lighttpd模块的默认设置。 如果您可以直接编辑您的站点conf文件,则可以使用以下语法明确加载您需要的任何模块:
server.modules += ( "mod_access", "mod_rewrite" )
一般来说,你应该阅读lighttpdconfiguration文档 ,特别注意从apache迁移的部分。
如果lighttpd服务器加载了状态模块,那么您可能能够看到在那里加载了哪些模块,如果您有权访问该URL。 事情是,如果你没有改变configuration文件的权限,实际加载的模块对你来说并不重要。 如果您无法configuration您的网站,则无法使用加载的模块执行任何操作。
如果您将mod_status添加到lighttpdconfiguration文件
server.modules = ( ..., "mod_status", ... ) status.config-url = "/server-config"
那么相对的URL /服务器configuration将显示哪些模块被加载。 我通过从lib目录中删除未使用的模块来减lesslighttpd磁盘空间的使用。 如果mod_status已经被系统的系统pipe理员启用,你应该能够使用这个来确定哪些模块被加载,包括默认加载的模块。
怎么样:
httpd -l # for static modules httpd -M # for shared modules
或者在Ubuntu上:
apache2 -l # for static modules apache2 -M # for shared modules