我有一个网站,我有这样的页面:
domain.com/?p=settings
domain.com/?p=daily
我正在寻找重写?p=
部分,所以它会像这样
domain.com/settings
到目前为止,我已经尝试将其添加到htaccess文件中:
RewriteRule ^([^\.]+)$ $1?p= [NC,L]
但它并没有起作用。
此外,我已经尝试从谷歌寻找,但没有找到任何。
我尝试过其他的RewriteRule,但它们也不起作用。
发布于 2017-01-04 22:12:50
RewriteRule不包含查询字符串。它可以作为单独的变量enter link description here使用
模式最初将根据主机名和端口之后、查询字符串之前的URL部分进行匹配(例如"/app1/index.html")。这是(%解码的)URL路径。
因此,下面的方法将不起作用。
RewriteRule ^([^.]+)$ $1?p= [NC,L]
你需要像这样的东西
RewriteCond %{QUERY_STRING} ^(\w+)=(\w+)$
RewriteRule ^/ %2?
签出Apache Mod ReWrite Wiki并向下滚动到“使查询字符串成为路径的一部分”。
发布于 2017-01-05 20:44:06
您的尝试已接近完成,您需要在.htaccess
中使用此命令
RewriteEngine On
RewriteRule ^([^/]*)$ /?p=$1 [L]
在测试之前,请确保清除缓存。
https://stackoverflow.com/questions/41465427
复制相似问题