我有一种情况,我想实际看到url变量,即使我的htaccess网站的其余部分使用可读的URL。
问题在于它只是显示为未找到的页面......
这有效......
RewriteRule ^files/(.+)/from_all_files/$ pages/file.php?slug=$1&from=all-files
这不起作用
RewriteRule ^files/(.+)?from=all-files$ pages/file.php?slug=$1&from=all-files
我正在寻找第二个工作。
答案 0 :(得分:0)
您无法检查RewriteRule
中的查询字符串,该{1}}只能看到REQUEST_URI
。您需要使用以下内容:
RewriteCond %{QUERY_STRING} ^from=all-files$ [NC]
RewriteRule ^files/(.+)$ pages/file.php?slug=$1 [QSA,L]
当您请求http://example.com/files/some-file?from=all-files时,请求将在内部重写为pages/file.php?slug=some-file&from=all-files
。 Query String Append标志(QSA
)会将当前查询字符串附加到您要重写的字符串。