我的 httpd.conf 在 FreeBSD 上被破坏了
uname -a
FreeBSD ares 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Thu Jan 1 14:37:25 UTC 2009 [email protected]:/usr/obj/usr/src/sys/GENERIC i386
我正在运行 apache-2.0.63_2。我所做的是修改 /home/user/public_html/.htaccess 并添加 Deny from 规则,然后重新启动 apache。
有什么想法吗?有已知的错误吗?我做错了什么吗?
答案1
Apache 在启动时只读取一次配置文件。每当您对 进行更改时httpd.conf
,您都需要告诉 Apache 您已更改其配置文件,并且它应该重新加载该文件。执行此操作的一种方法是重新启动 Apache。
上述情况的结果是,Apache 不会对其配置文件中的任何更改作出反应,除非您指示它这样做(例如通过重新启动)。更有可能的是,在您上次重新启动 Apache 之后的某个时间,您的配置文件已被其他内容更改(如您所说是“废弃”)。在这种情况下,您直到下次重新启动 Apache 时httpd.conf
才会看到更改的效果。httpd.conf
答案2
如果 httpd.conf 被破坏,则意味着网站无法打开并出现 500 错误,那么 .htaccess 语法可能存在问题。如果 .htaccess 文件中出现错误,则该目录或其子目录中的所有页面都会出现 500 内部服务器错误。
但是,如果 httpd.conf 被破坏了,则意味着 apache 根本无法启动,那么可能是其他原因。您可以尝试从其他类似安装中复制一个新的 httpd.conf,然后尝试启动 apache。如果此方法有效,请从旧文件向新文件添加几行,以准确找到导致问题的行。