我正在尝试部署的站点遇到问题。该站点在我的开发主机上运行良好,但部署失败。两台主机的配置非常相似,都是 Ubuntu Linux 发行版(开发:11.10,部署:10.04),都使用 apache2 等。
两个站点都启用了 mod_dir,但部署站点似乎没有将斜杠添加到目录名称,而开发站点则这样做。因此,当我输入此 URL 时(删除 http 以避免愚蠢的 stackoverflow 反垃圾邮件过滤):
devel.mydomain.com/admin
开发主机将其重定向到:
devel.mydomain.com/admin/
http://mydomain.com/admin
由于未知原因,在部署中未重定向到 mydomain.com/admin/,并且我以 404 错误结束。当然,如果我输入mydomain.com/admin/
,手动添加斜杠,它会按预期工作。但我更喜欢重定向mydomain.com/admin
到mydomain.com/admin/
问题是为什么在 devel mod_dir 中似乎在进行重定向,而在部署中却没有。
我在配置文件中做了一个 grep 来查看 DirectorySlash 指令是否在某处被禁用并且什么也没找到。它既没有在开发中明确启用,所以我认为它应该默认启用。无论如何,我将其添加到部署主机上的 .htaccess 文件中:
DirectorySlash on
但它也没有工作。
有什么提示吗?