问题描述
我想使用 htaccess mod rewrite 重写我的网站的路径,也带参数。所以,我希望我的网站执行如下操作:
mysite.com/chat.PHP?a=text&b=1&c=2&d=text
当我写这个路径时:
mysite.com/chat/text/1/2/text
我该怎么做?
这是我现在的 htaccess,但它不起作用:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^chat/([a-z]+)/([0-9]+)/([0-9]+)/([a-z]+)$ chat.PHP?n=$1&c=$2&s=$3&b=$4 [QSA]
解决方法
您能否尝试仅使用显示的示例进行以下、编写和测试。 请确保在测试您的网址之前清除浏览器缓存。
RewriteEngine ON
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)$ $1.php?a=$2&b=$3&c=$4&d=$5 [L]
或查找以 chat
开头的 URL,请尝试以下操作。请确保您使用上述规则或一次只遵循一组规则。
RewriteEngine ON
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(chat)/([^/]*)/([^/]*)/([^/]*)$ $1.php?a=$2&b=$3&c=$4&d=$5 [NC,L]