【发布时间】:2011-11-05 07:10:44
【问题描述】:
我的 .htaccess 中有以下命令
RewriteCond %{HTTP_HOST} ^(www\.)?([a-z0-9-]+)\.example\.com [NC]
RewriteRule ^(.*?)-([a-z]+) %2/$1.$2 [L]
RewriteRule ^(.*?)-([0-9]+)([a-z]) %2/$1$3.$2 [L]
%2 在第二行和以后的行中不起作用。 我可以为 %2 定义任何变量并在所有 RewriteRule 命令中使用它吗? 以下命令有效
RewriteCond %{HTTP_HOST} ^(www\.)?([a-z0-9-]+)\.example\.com [NC]
RewriteRule ^(.*?)-([a-z]+) %2/$1.$2 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?([a-z0-9-]+)\.example\.com [NC]
RewriteRule ^(.*?)-([0-9]+)([a-z]) %2/$1$3.$2 [L]
但我想在不重复条件的情况下将 %2 用于多个规则行。
【问题讨论】:
-
您可能会查看此处列出的 4 个技巧,stackoverflow.com/a/24276207/5064633
标签: apache .htaccess mod-rewrite