我最近继承了一个在 Debian 5 安装上使用 Apache 的应用程序。我是 Apache 的新手,并且会感到担心,因为我知道 Apache 的 Debian 设置并不是很经典。
我发现这一页其中描述了一些差异,但我想知道是否还有其他一些我应该注意的“陷阱”。该页面是否详尽解释了这些差异,还是还有其他?
谢谢你!
答案1
既然你询问了一些你应该注意的其他“陷阱”,那么情况如下:
- Debian/Apache2 默认不设置“UseCanonicalName”指令
- 也没有默认的“DirectoryIndex”指令
- 由于未设置“TypesConfig”,因此缺少 MIME 类型
- 没有默认字符集,因为不存在“AddDefaultCharset”指令
- /etc/apache2/conf.d/security 中的“ServerSignature”指令默认设置为“On”,这可能会泄露大量有关 Apache 设置的信息。如果服务器有面向公众的 IP,我建议将其设置为 Off。
- 同样在 /etc/apache2/conf.d/security 中,TraceEnable 默认设置为“On”。如果服务器有面向公众的 IP,则将其设置为“Off”。
您通常不需要更改这一点,但值得注意的是,Apache 在 Debian 中运行的用户/组是在文件 /etc/apache2/envvars 中定义的(您链接的文章中没有提到这一点)
答案2
您可以在 Debian 上从源代码下载并构建 apache,从而获得“标准”安装。除了文件/文件夹/模块的位置略有不同外,其他一切都相同。
答案3
您链接的文章描述了您需要的基础知识。它很实用。
Debian 的 apache 配置仅加载所需的模块,与 Redhat 的 apache 设置相比,这节省了 apache 进程的内存占用。
我唯一能补充的是,如果您使用 apache 运行 php,Debian 默认使用强化的 php 扩展 suhosin。定期在 /var/log/messages 文件中查找“suhosin”,以查看您的 php 应用程序是否超出此扩展所施加的某些默认限制。您发现的来自 suhosin 的其他错误实际上是它对试图闯入的黑客和脚本小子进行的实际阻止(这是一件好事)。