【发布时间】:2014-04-10 03:08:57
【问题描述】:
我已经安装了 Apache。
我已取消注释 LoadModule rewrite_module modules/mod_rewrite.so,并在 http.conf 中将 AllowOverride None 的每个实例设置为 AllowOverride All。
我的网站位于一个子文件夹中,因此可以使用 http://123.34.56.123/Website/ 访问它。
.htaccess 文件
RewriteEngine On
RewriteBase /Website/
Options +FollowSymLinks
RewriteRule ^index.php http://www.google.com/? [R=301,L]
但是当我访问上述地址时,它并没有重定向到 google.com,而是显示了 index.php 的内容。
更新:
在 .htaccess 文件和 http.conf 中添加了垃圾以强制内部服务器错误,它仍然只是进入我的 index.php。
在 $_SERVER 上做了一个 var dump,发现了这个:["SERVER_SOFTWARE"]=> string(17) "Microsoft-IIS/6.0",但在 IIS 周围找不到任何程序文件。
【问题讨论】:
-
.htaccess文件在哪个文件夹中?另外,只是一种预感:您在帖子中反复称其为“htaccess 文件”。文件名必须为.htaccess。你能确认它的名字是正确的吗? -
如果这是全新安装 -- 一个常见的 windows 问题是以非管理员身份编辑 httpd.conf,windows 为非管理员创建它的卷影副本 -- httpd 继续使用真实文件。快速测试是附加“fdsfsfsfs”并查看它是否会破坏 Apache。
-
@covener 嗯,所以我编辑了 http.conf 文件,将垃圾附加到它上面,它并没有破坏 Apache。你让我走上了一条新的道路,谢谢!
标签: php apache .htaccess mod-rewrite windows-server-2003