[英]Rewrite subdomain and URL-path to URL parameters but allow access to files
[英]URL rewrite with subdomain and additional parameters
我有一个变体子域,需要在斜杠后的URL后面重写和添加多个其他参数。
我当前的重写规则如下:
RewriteCond %{HTTP_HOST} ^((?!www).+)\.classifiedads4free\.com$ [NC]
RewriteCond %{REQUEST_URI} !\.(?:jpe?g|png|gif|bmp|php)$ [NC]
RewriteRule (.*) pages/list.php?country=%1&category=%2 [L,QSA]
RewriteRule ^cat/([A-Za-z0-9-]+)?$ pages/list.php?category=$1 [QSA,NC,L]
我可以像访问http://us.classifiedads4free.com
一样访问每个单独的重写。 我可以阅读country参数。 当我转到http://classifiedads4free.com/cat/jobs
,我可以读取category参数。
但是我无法获取http://us.classifiedads4free.com/cat/jobs
的正确参数。
仅显示国家/地区参数。 如何使两个参数都考虑在内?
每个RewriteCond(s)
只能有一个规则,因此您需要包括再次选择国家/地区的条件以及该规则。 而且,在缺少国家/地区代码时,您仍然需要独立的规则。
RewriteCond %{HTTP_HOST} ^((?!www).+)\.classifiedads4free\.com$ [NC]
RewriteCond %{REQUEST_URI} !\.(?:jpe?g|png|gif|bmp|php)$ [NC]
RewriteRule ^cat/([A-Za-z0-9-]+)?$ pages/list.php?country=%1&category=$1 [QSA,NC,L]
RewriteCond %{HTTP_HOST} ^((?!www).+)\.classifiedads4free\.com$ [NC]
RewriteCond %{REQUEST_URI} !\.(?:jpe?g|png|gif|bmp|php)$ [NC]
RewriteRule (.*) pages/list.php?country=%1&category=%2 [L,QSA]
RewriteRule ^cat/([A-Za-z0-9-]+)?$ pages/list.php?category=$1 [QSA,NC,L]
同样重要的一点是规则必须首先使用,否则(.*)
将消耗cat/...
并选择错误的规则
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.