.htaccess 还有一个问题
我在WAMP服务器上有一个.htaccess文件。htaccess重写可以很好地工作…对于一些简单的url重写,但是我不能让它在一个简单的测试中工作 我的.htaccess.htaccess 还有一个问题,.htaccess,get,wamp,.htaccess,Get,Wamp,我在WAMP服务器上有一个.htaccess文件。htaccess重写可以很好地工作…对于一些简单的url重写,但是我不能让它在一个简单的测试中工作 我的.htaccess Options +FollowSymLinks RewriteEngine on RewriteRule ^Homepage/$ index.php RewriteRule ^Test/(.*)/$ test.php?a=$1 在我的test.php上,我正在转储$\u GET 我的主页工作正常,即重定向正常。但是我的测试
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^Homepage/$ index.php
RewriteRule ^Test/(.*)/$ test.php?a=$1
在我的test.php上,我正在转储$\u GET
我的主页工作正常,即重定向正常。但是我的测试页面只是部分工作,因为它转到Test.php,但是没有从我的$\u GET dump中转储任何内容—它只是一个空数组
理想情况下,我需要对多个文件夹执行此操作,例如
RewriteRule ^Test/(.*)/(.*)/(.*)/$ test.php?a=$1&b=$2&c=$3
…但我甚至不能让我的简单测试工作
顺便说一句,同样的.htaccess在我的Linux环境(开发服务器)中工作得非常好。我现在需要把它移到一个生产Windows框中,它根本不起作用
如果有帮助,此.htaccess文件位于子文件夹中,例如C:\wamp\www\mywebsite\.htaccess
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^Homepage/$ index.php
RewriteRule ^Test/(.*)/$ test.php?a=$1
我做错了什么?有什么想法吗?提前谢谢
更新:
打开“重写日志”(将真实网站名替换为mywebsite)并返回以下内容:
217.42.222.22 - - [31/Mar/2011:23:08:16 +0100] [www.mywebsite.com/sid#65f3f0][rid#1a13a68/subreq] (1) [perdir C:/wamp/www/mywebsite.com/] pass through C:/wamp/www/mywebsite.com/test.php
217.42.222.22 - - [31/Mar/2011:23:08:16 +0100] [www.mywebsite.com/sid#65f3f0][rid#1a2ea88/initial] (1) [perdir C:/wamp/www/mywebsite.com/] pass through C:/wamp/www/mywebsite.com/test.php
217.42.222.22 - - [31/Mar/2011:23:08:16 +0100] [www.mywebsite.com/sid#65f3f0][rid#1a24af0/subreq] (1) [perdir C:/wamp/www/mywebsite.com/] pass through C:/wamp/www/mywebsite.com/ABC
我还是不明白;-) 两个建议:
您的重写规则如下所示:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^Homepage/$ /index.php [R=301,L]
RewriteRule ^Test/(.*)/$ /test.php?a=$1 [R=301,L]
重写规则的目标应该以/@CWA开头:我在上面的规则中添加了
[R=301,L]
,做了一个小小的修改。我也在Windows XP上安装了xampp
,并在那里测试了上述规则,它们都运行良好。当我输入此URLhttp://localhost/Test/foo/
它被重定向到http://localhost/test.php?a=foo