2015-06-16 55 views
0

我有一种情况,即使我的htaccess网站的其余部分使用可读的URL,我也想实际看到url变量。htaccess查询字符串重定向无法正常工作

的问题是,它只是显示为找不到网页...

这工作...

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

您不能检查RewriteRule中的查询字符串,该查询字符串只能看到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。查询字符串追加标志(QSA)会将当前查询字符串追加到要重写的字符串。

相关问题