Rexex htaccess 404错误

时间:2015-06-17 08:01:27

标签: regex .htaccess

我正在尝试将所有请求发送到服务器以使用请求信息转到index.php文件。

另外,我想阻止直接访问index.php文件。

第二部分工作正常,但由于某种原因我无法完成第一部分

  #If the request is for index - prevent from accessing the file directly
    RewriteRule ^(.*)index\.php(.*)$ - [F,L]

#If the request if not for the receiver - redirect to the api server
#RewriteCond !^(*.)campaigns/(\d+)/pictures(.*)$ [NC]
RewriteRule  index.php?request=$1 [NC,QSA,L]

我做错了什么?

1 个答案:

答案 0 :(得分:0)

(。*)是一个贪婪的比赛,所以它会吃掉一切。试试这个:

RewriteRule ^(.*?)index\.php(.*)$ - [F,L]

添加" ?"。但是你真的需要第一个(.*)吗?您是否只想在" .php"之后捕捉内容?为什么你有两个(.*),但你只是反向引用一个?