重写规则无法正常工作

时间:2017-03-05 20:47:36

标签: php .htaccess mod-rewrite

我一直在尝试应用重写规则来更改目前看起来像这样的网址:

www.mysite.com/my-site/en

更改为:

www.my-site.com/en or /es

但是我希望它有力而且不允许有人刻意输入后者。 还

www.my-site.com/en/?page=car&category=15

改为 www.my-site.com/en/car/15(或者我可以改为输入类别名称) 我也有这个:

www.my-site.com/en/?page=catalogue-item&category=204&id=563

我想改为: www.my-site.com/en/563(或者我可以直接输入项目名称)

到目前为止,这是我的htaccess:

# RewriteOptions inherit
<IfModule mod_rewrite.c>

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^my-site.com [NC]
RewriteRule ^(.*)$ http://www.my-site.com/$1 [L,R=301,NC]
RewriteRule ^$ my-site/ [L,NS,R=301]
RewriteCond %{HTTP_HOST} ^www.my-site.com/my\-site/ [NC]
RewriteRule ^(.*)$ http://www.my-site.com/$1 [L,R=301,NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ my-site/$1 [L,NS]
RewriteRule ^([^/]*)$ /en/?page=$1 [L]
RewriteRule ^([^/]*)$ /es/?page=$1 [L]

RewriteRule ^([^/]*)/([^/]*)$ /en/?page=$1&category=$2 [L]
RewriteRule ^/([^/]+)/~([^/]+)/(.*)$ my-site/$1 [L,NS]

</IfModule> 

我提前感谢你,希望有人能指出我的问题,再次感谢你。

0 个答案:

没有答案