我想重写网址
mysite.com/eng?sentence=cat
显示如下:
mysite.com/eng/cat
我不想要重定向只是重写。所以我尝试更改我发现的重写规则,在我编辑它之前的示例最初有一个 R=301:
RewriteCond %{THE_REQUEST} ^GET\ /eng\?sentence=([^&\s]+) [NC]
RewriteRule ^eng\?sentence=$ /english/%1? [R=302,NC,L]
但是当我从第二行删除 R=301 时,它会给出 500 错误。
我该如何编写这种重写规则?我对这个正则表达式的东西不是很好,我也不熟悉这个
我的 htaccess 文件:
# Use PHP5.3 Single php.ini as default
AddHandler application/x-httpd-php54s .php
AddType application/x-httpd-php .htm .html
Options -Indexes -MultiViews
ErrorDocument 404 /404.php
ErrorDocument 500 /500.php
RewriteEngine on
RewriteCond %{THE_REQUEST} ^GET\ /eng\?sentence=([^&\s]+) [NC]
RewriteRule ^eng\?sentence=$ /english/%1? [R=302,NC,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]
<FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>