htaccess mod_rewrite与2.4 apache没有按预期工作

时间:2016-05-30 16:37:22

标签: php .htaccess mod-rewrite

这是我所有的htaccess代码

   #Options -MultiViews

   RewriteEngine on

   RewriteBase /

   RewriteCond %{REQUEST_FILENAME} !-d

   RewriteCond %{REQUEST_FILENAME} !-f

#
#  This Conditions is for admin
#

   RewriteRule   ^admin/$                     admin/index.php                   [L]
   RewriteRule   ^admin/(index|login|process|action|logout|ajax|controller).php  admin/$1.php?             [QSA,L]
   RewriteRule   ^admin/(.*).php             admin/controller.php?plugin=$1                    [QSA,L]
   RewriteRule   ^admin/(.*)                  admin/router.php?t=$1                             [QSA,L]

#
#  This Conditions is for Themes
#

   RewriteRule   ^theme/(.*)    view/themes/$1                  [QSA,L]

   RewriteRule   ^admin_theme/(.*) view/admins/$1               [QSA,L]

#
#  This Conditions is for App
#
   RewriteRule   ^(.*).(css|js|png|jpg|jpeg|gif|woff|ttf|otf|mp3|mp4|ogg)$       app/$1.$2      [QSA,L]

   RewriteRule   (post_comment|feed|login|action|reset|index).php       app/$1.php            [QSA,L]

   RewriteRule   ^$             app/index.php                   [L]

   RewriteRule   ^(.*)?         app/router.php?regex=$1              [QSA,L]

   RewriteRule   (.*)           app/$1                          [QSA,L]

每件事情都很好,但这种情况

RewriteRule ^admin/(.*).php admin/controller.php?plugin=$1 [QSA,L]

重定向到此链接 的 /app/router.php?regex=site.com/admin/users.php

但我应该是这个

site.com/admin/controller.php?plugin=users&

我正在使用localhost ** xampp *没有发现问题

但上传到服务器后apache 2.4问题apper

我正在使用此网站查看我的htaccess代码

http://htaccess.mwl.be/

这里的问题是什么,以及如何使用apache 2.4

1 个答案:

答案 0 :(得分:0)

使用反斜杠.

转义特殊字符\.
RewriteCond %{HTTP_HOST} ^alalmea.art4muslim.net
RewriteRule ^admin/(.*)\.php  /admin/controller.php?plugin=$1     [QSA,L]

对于PCRE以及大多数其他所谓的Perl兼容版本,请转义这些外部字符类:

.^$*+?()[{\|