我正在使用.htaccess将大约100个hmtl页面重定向到单个PHP页面(example.php)。它工作得很好。
我在该页面上分页(example.php),但我使用的是原始HTML网页网址(example.html?page = 2& limit = 20)
请帮我阅读(example.html?page = 2& limit = 20)查询字符串参数。
编辑从评论移植的代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !^page-(.*)$
RewriteRule ^page-(.*)$ size-content.php?sef=$1 [L]
答案 0 :(得分:3)
添加QSA标志,这意味着“查询字符串追加”以确保将现有查询字符串移植到重写的URL中。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !^page-(.*)$
RewriteRule ^page-(.*)$ size-content.php?sef=$1 [L,QSA]
答案 1 :(得分:0)
.htaccess修改您的服务器配置。
如果您要进行重定向,则更改您的请求。 如果你当然使用Apache,请尝试使用mod_rewrite。
RewriteEngine On
RewriteRule ^example\.html\?(.*) example.php?$1
Mod重写是Apache的模块。大多数免费托管都不允许这样做。
答案 2 :(得分:0)
Yasir - 您可以通过两种方式解决此问题: 1)重写.htaccess的规则
RewriteEngine On RewriteCond%{REQUEST_FILENAME}!^ page - (。)。html(。)/(。)$ RewriteRule ^ page - (。)。html(。)/(。)$ size-content.php?sef = $ 1& page = $ 2& limit = $ 3 [L]
此规则将处理:page-example.html?page = 2& limit = 20
我希望 - 您将很容易理解上述规则。
注意:如果你改变htaccess中的规则,请记住一件事,即每个链接应该是相同的模式。
2)您可以在“size-content.php”
上解决此问题假设page-example.html?page = 2& limit = 20
$ _ GET ['sef'] = example.html?page = 2& limit = 20 [根据你.htaccess]
现在您可以通过爆炸功能解析此字符串
由于