我正在尝试提出重定向规则,该规则可以在所有二级域上普遍使用,以重定向到WWW,而我正在努力使用正则表达式。有许多主题,但他们都建议使用命名域,我相信它可以做得更好。
以下是我目前的情况:http://regexr.com/393vp
编辑: 显然链接到第三方编辑器是不够的问题,不要偏离主题。我需要正则表达式匹配
domain.tld
2nddomain.tld
another-domain.tld
但不是
www.domain.tld
one.domain.tld
one.two.domain.tld
答案 0 :(得分:2)
在使用多行选项时,我无法使其在您的示例数据上正常运行,但如果您单独提供每一行,那么这将与需要“www”的那些匹配。先于他们:
^[^\.]*\.[^\.]*$
它只是行的开头,无限多的非点,一个点,无数多个非点,然后是行的结尾。
答案 1 :(得分:0)
试试这个:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?!www)[^.]+\.example\.com
RewriteRule ^(.*)$ http://www.example.com/$1 [QSA,NE,L,R]
如果您对重定向工作感到满意,可以将R
更改为R=301
以使其永久化。
这假设mod_rewrite phpinfo();
输出中已安装模块的列表
默认情况下,不为htaccess文件启用mod_rewrite。如果您要管理自己的服务器,请打开httpd.conf
并确保webroot目录块包含以下行之一:AllowOverride FileInfo
或AllowOverride All