Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 将第二个www和非www重写为子页面_Apache_.htaccess_Mod Rewrite_Web - Fatal编程技术网

Apache 将第二个www和非www重写为子页面

Apache 将第二个www和非www重写为子页面,apache,.htaccess,mod-rewrite,web,Apache,.htaccess,Mod Rewrite,Web,我是个新手,问题很简单,我希望mysite.eu和www.mysite.eu重定向到他们网站的子页面, 但是我不能让它对两个都起作用,因为当我添加这样的东西时,我陷入了一个循环中,所以我如何修复这个问题,使两个都指向子页面而不得到一个循环 我的例子是: RewriteCond %{HTTP_HOST} www\.mysite\.eu [NC] RewriteRule . http://www.mysite.eu/page?page=webshop_fixol&lng=1 [L] Re

我是个新手,问题很简单,我希望mysite.eu和www.mysite.eu重定向到他们网站的子页面, 但是我不能让它对两个都起作用,因为当我添加这样的东西时,我陷入了一个循环中,所以我如何修复这个问题,使两个都指向子页面而不得到一个循环

我的例子是:

RewriteCond %{HTTP_HOST}  www\.mysite\.eu [NC]
RewriteRule . http://www.mysite.eu/page?page=webshop_fixol&lng=1 [L]

RewriteCond %{HTTP_HOST}  mysite\.eu [NC]
RewriteRule . http://www.mysite.eu/page?page=webshop_fixol&lng=1 [R=permanent,L]

它可以在一个重写规则中完成,如下所示:

RewriteCond %{QUERY_STRING} ^$
RewriteCond %{HTTP_HOST}  ^(www\.)?mysite\.eu$ [NC]
RewriteRule . page?page=webshop_fixol&lng=1 [L,QSA]

^www\.?mysite\.eu$将与www和非www两个站点匹配。

为什么您有这个选项。那里确定您不仅仅想要这个:

RewriteCond %{HTTP_HOST}  www\.mysite\.eu [NC]
RewriteRule ^/$ http://www.mysite.eu/page?page=webshop_fixol&lng=1 [L]

RewriteCond %{HTTP_HOST}  mysite\.eu [NC]
RewriteRule ^/$ http://www.mysite.eu/page?page=webshop_fixol&lng=1 [R=permanent,L]

谢谢你的快速回复,但我已经测试过了,我得到了mysite.eu和www.mysite.eu的无限循环,原因可能是我在代码中也有这样的标题:选项索引包括以下符号链接多视图,或者这也在virtualhost文件中:RewriteCond%{DOCUMENT_ROOT}/%{REQUEST_FILENAME}-rewrited rule^/+[^/]$http://%{http_HOST}/$1/[R]他补充道:。。。是的,我认为这是正确的答案,非常感谢!