我有一个网站,我有以下网页:
domain.com/?p=settings
domain.com/?p=daily
我正在寻找重写?p=
部分,所以它就像
domain.com/settings
到目前为止,我已尝试将其添加到htaccess文件中:
RewriteRule ^([^\.]+)$ $1?p= [NC,L]
但它没有奏效。
此外,我试过从谷歌看,但找不到任何。
我尝试了其他RewriteRule,但它们也没有用。
答案 0 :(得分:0)
RewriteRule不包含查询字符串。它可作为单独的变量enter link description here
使用模式最初将与主机名和端口之后以及查询字符串之前的URL部分匹配(例如“/app1/index.html”)。这是(%-decoded)URL路径。
所以以下内容不起作用。
RewriteRule ^([^.]+)$ $1?p= [NC,L]
你需要像
这样的东西RewriteCond %{QUERY_STRING} ^(\w+)=(\w+)$
RewriteRule ^/ %2?
结帐Apache Mod ReWrite Wiki并向下滚动到“使查询字符串成为路径的一部分”
答案 1 :(得分:0)
您的尝试已接近,您需要在.htaccess
:
RewriteEngine On
RewriteRule ^([^/]*)$ /?p=$1 [L]
确保在测试之前清除缓存。