我对这些东西感到疯狂:
这是我的.htaccess内容:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
当我继续:http://mydomain.com
以下是重写日志中的内容:
RewriteCond: input='www.mydomain.com' pattern='!^www\.' => not-matched
所以输入应该是mydomain.com,条件应该匹配但是没有...
当我尝试在.htaccess中指定域名时,我会得到无限循环......
我会尽量保持冷静,并希望有人可以帮助我。
谢谢你们!
答案 0 :(得分:1)
所以我解决了问题,这就是我需要做的所有事情的清单,也许有人会遇到同样的问题。
首先,我需要使用此cmd激活apache的重写模式:
a2enmode rewrite
然后你需要转到httpd.conf或apache2.conf并先设置两个:
AllowOverride None
进入
AllowOverride All
如果您定义了一些特定的域重定向,则只在域conf文件中进行。
现在您可以检查.htaccess是否为红色。写了像XXXX这样的东西,它应该返回一个内部500错误。如果不是,则重写,因此.htaccess不会激活。
现在,这就是我被阻止的地方,你需要检查你的dns重定向。
那是我以前的配置:
www.mydomain.com typeA XXX.MY.IP.XXX
.mydomain.com typeA www.mydomain.com
所以事实上,即使网址仍然显示http://mydomain.com,apache也认为它来自www.mydomain.com所以.htaccess没有动作......
我这样设置:
www.mydomain.com typeA XXX.MY.IP.XXX
.mydomain.com typeA XXX.MY.IP.XXX
并加入我的apache配置域
ServerName www.tagmydiscount.com
ServerAlias tagmydiscount.com
现在,它终于像魅力一样工作了。希望它能为你们中的一些人提供帮助。