使用htaccess文件重定向问题

时间:2016-07-20 15:19:30

标签: .htaccess mod-rewrite

我的htaccess规则存在问题。

这是我的htaccess:

Options -MultiViews

RewriteEngine On  
RewriteBase /
RewriteRule ^/(css|js|img)/([a-zA-Z0-9_-]+)?$ /$1/$2 [L,QSA,R=permanent]

RewriteRule ^create$ create.php [L]
RewriteRule ^delete$ delete.php [L]
RewriteRule ^error$ error.php [L]

RewriteRule ^([\$\.A-Za-z0-9_-]+)$ fetch.php?fetch=$1 [QSA,L]
RewriteRule ^([\$\.A-Za-z0-9_-]+)/make$ fetch.php?fetch=$1&make=do [QSA,L]
RewriteRule ^([\$\.A-Za-z0-9_-]+)/made$ fetch.php?fetch=$1&made=done [QSA,L]

DirectoryIndex index.php

每次我访问我的网站目录(http://localhost/myscript)时,我都会多次重定向并收到一条消息:页面未正确重定向。

当我删除这一行时:

RewriteRule ^([\$\.A-Za-z0-9_-]+)$ fetch.php?fetch=$1 [QSA,L]
RewriteRule ^([\$\.A-Za-z0-9_-]+)/make$ fetch.php?fetch=$1&make=do [QSA,L]
RewriteRule ^([\$\.A-Za-z0-9_-]+)/made$ fetch.php?fetch=$1&made=done [QSA,L]

我得到了它的工作......但这三行对我的剧本很重要。

请帮忙解决。

1 个答案:

答案 0 :(得分:1)

任何对此感兴趣的人。 我将这些条件添加到我的代码中并解决了问题。

# do not do anything for already existing files
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .+ - [L]

从这里得到回复:htaccess Rewrite Rule