.htaccess 使用寻呼系统在htaccess中重写mod

.htaccess 使用寻呼系统在htaccess中重写mod,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我有下面的代码,它工作得很好 RewriteRule ^articles/([^/\.]+)/?$ articles.php?pid=$1 [L] RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+articles\.php\?pid=([^\s&]+) [NC] RewriteRule ^ http://www.mydomain.com/articles/%1? [R=301,L] 问题是我有一个分页系统,我为我的分页系统向该页面发送另一个变量,如下所

我有下面的代码,它工作得很好

RewriteRule ^articles/([^/\.]+)/?$ articles.php?pid=$1 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+articles\.php\?pid=([^\s&]+) [NC]
RewriteRule ^ http://www.mydomain.com/articles/%1? [R=301,L]
问题是我有一个分页系统,我为我的分页系统向该页面发送另一个变量,如下所示

&pageNum_getArticles=1#1
我已经试着做了下面的事情,但是我觉得我和哈希混淆了

RewriteRule ^articles/([^/\.]+)/?$ articles.php?pid=$1&pageNum_getArticles=$2 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+articles\.php\?pid=([^\s&]+)&pageNum_getArticles=([^\s&]+) [NC]
RewriteRule ^ http://www.mydomain.com/articles/%1/%2? [R=301,L]

谢谢你的信息。有没有解决办法,或者我必须改变寻呼系统

有两套重写规则可以一起工作。第一条规则获取没有任何查询字符串的漂亮URL,并在内部将其重写为php脚本。第二条规则采用外观难看的php脚本URI,并重定向浏览器以使用外观更好的。第一组是正确的。但第二组使用相同的规则路由到脚本。您需要为分页创建另一个分组,因为
$2
不会反向引用任何匹配项

尝试:

请注意,如果仍要使用不使用分页的规则,则需要在使用分页的规则之后使用非分页规则

此外,如果由于某种原因,没有URL片段,分页无法工作,并且如果该片段始终与分页编号相同,则可以将其添加到重定向的末尾。但你需要一个像联邦航空局建议的NE:

RewriteRule ^ http://www.mydomain.com/articles/%1/%2#%2? [R=301,L,NE]

散列是一个URL片段,它从未发送到服务器,因此它不应该出现在
%{The_REQUEST}
变量中。该片段完全由浏览器端处理。感谢您提供的信息。有没有解决办法,或者我必须改变寻呼系统?
RewriteRule ^ http://www.mydomain.com/articles/%1/%2#%2? [R=301,L,NE]