我的实时网站可以正常读取 .htaccess。404.php 和 mod_rewrite 在那里工作正常,但在我的本地主机上... 什么都没有。
- PHPmyAdmin 3.1.5
- PHP 5.2.9-2
- Apache 2.2
我的.htaccess 是这样的:
ErrorDocument 404 /404.php
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^news/([0-9]+)-(.*)\.html$ news/index.php?id=$1 [L]
阅读http://localhost/phpinfo.php显示 mod_rewrite 已打开,但是不起作用,404.php 页面也不起作用。Apache 错误日志仅显示在服务器上未找到该页面。
我的 httpd.conf 当前如下所示:
DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
<Directory />
Options FollowSymLinks
Order Allow,Deny
Allow from 127.0.0.1
Deny from All
</Directory>
我可以将其更改为您想要的任何组合,但它不会产生任何效果。我的头痛还可能来自哪里?我遗漏了什么?
谢谢,签名,菜鸟(技术方面)
答案1
尝试添加
AllowOverride All
标签内。
答案2
讚美主宰,传递彈藥。
这篇文章为我指明了答案,并带领人们走出了沙漠: https://stackoverflow.com/questions/1608589/how-to-enable-htaccess-in-httpd-conf-on-xp
我的文件保存为“htaccess”,而不是“.htaccess”。第一次保存文件时,我确实添加了点,但 Windows 在保存文件名时将其删除。刚才我用 Notepadd++ 打开它,并将其重命名为“.htaccess”,结果就好了!
伙计,这不应该这么难……