Php 无法使用.htaccess从URL中删除查询字符串
我的URL看起来像Php 无法使用.htaccess从URL中删除查询字符串,php,.htaccess,mod-rewrite,Php,.htaccess,Mod Rewrite,我的URL看起来像http://example.com/?n=x。我希望URL显示为http://example.com/。到目前为止,我已经习惯了这些方法,但没有一种有效 第一个是基于: 重新编写引擎打开 RewriteCond%{QUERY_STRING}^n=1$ 重写规则(.*)1美元?[R=永久性] 在回答以下问题后,我修改了.htaccess文件: ```RewriteEngine On RewriteCond %{QUERY_STRING} ^n=(.*)$ RewriteR
http://example.com/?n=x
。我希望URL显示为http://example.com/
。到目前为止,我已经习惯了这些方法,但没有一种有效
重新编写引擎打开
RewriteCond%{QUERY_STRING}^n=1$
重写规则(.*)1美元?[R=永久性]
```RewriteEngine On
RewriteCond %{QUERY_STRING} ^n=(.*)$
RewriteRule (.*) $1? [R=permanent]```
但它仍然不起作用。以下是调试信息:
RewriteCond %{QUERY_STRING} ^n=(.*)$
This condition was met.
RewriteRule (.*) $1? [R=permanent]
The new url is http://example.com/blog/cat/??
Test are stopped, a redirect will be made with status code permanent
重新编写引擎打开
重写cond%{QUERY_STRING}^$
重写规则^(.*)$$1[QSD]
如果转到
http://example.com/?n=1
,如果我没有错,您应该将^n=1$
更改为^n=(.*)$
以及其他问题:
.htaccess
将被读取感谢您的回答@P0IT10n URL仍然没有被重写。请尝试在
上的重写引擎
和RewriteCond%{QUERY\u STRING}^n=(.*)$
,RewriteBase/
之间添加,如果仍然不起作用,请尝试查看您的.htaccess
是否已被读取。用于尝试HTACCESS规则。我已更新问题以添加额外的调试信息。:)您使用了http://example.com/blog/cat/??
该文件的正确输出应该是什么?