Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.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重定向到裸域_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Apache:将WWW重定向到裸域

Apache:将WWW重定向到裸域,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我有一个使用Laravel编写的应用程序,它生成动态子域。因此,我有一个通配符*路由机制。由于SSL的一些复杂性,我需要将www.example.com路由重定向到裸域example.com,最好使用重写规则将其重定向到Apache.conf文件中 我做了一些搜索并看到了一些示例,但我看到的大部分内容要么将所有子域重定向到裸域,这破坏了我上面提到的子域功能,要么与我尝试做的相反,将裸域重定向到www,这在我的许多现有路由中导致重定向循环 这是使用Apache可以做到的吗 编辑: 我想我修好了。对

我有一个使用Laravel编写的应用程序,它生成动态子域。因此,我有一个通配符*路由机制。由于SSL的一些复杂性,我需要将www.example.com路由重定向到裸域example.com,最好使用重写规则将其重定向到Apache.conf文件中

我做了一些搜索并看到了一些示例,但我看到的大部分内容要么将所有子域重定向到裸域,这破坏了我上面提到的子域功能,要么与我尝试做的相反,将裸域重定向到www,这在我的许多现有路由中导致重定向循环

这是使用Apache可以做到的吗

编辑:


我想我修好了。对于其他有类似问题的人,我在/etc/apache2/sites enabled/000-default.conf中使用了以下规则:


这会将任何以www开头的URL重定向到其裸体等价物,这有一个额外的好处,即从子域中剥离www,因此,例如,www.test.example.com被重定向到test.example.com,这很好,但由于www.{subdomain}没有必要.example.com在我的应用程序中不是一个已定义的路由,并且无论如何都不会工作。

我想我已经修复了它。对于其他有类似问题的人,我在/etc/apache2/sites enabled/000-default.conf中使用了以下规则:


这会将任何以www开头的URL重定向到其裸体等价物,这有一个额外的好处,即从子域中剥离www,因此,例如,www.test.example.com被重定向到test.example.com,这很好,但由于www.{subdomain}没有必要.example.com在我的应用程序中不是一个已定义的路由,并且无论如何都不会工作。

我想我已经修复了它。对于其他有类似问题的人,我在/etc/apache2/sites enabled/000-default.conf中使用了以下规则:

这会将任何以www开头的URL重定向到其裸体等价物,这有一个额外的好处,即从子域中剥离www,因此,例如,www.test.example.com被重定向到test.example.com,这很好,但由于www.{subdomain}没有必要.example.com不是我的应用程序中定义的路由,无论如何都无法工作。

http://%1$1可能应该是http://%1/$1。否则www.example.com/directory/将成为example.comdirectory/。我会自己编辑,但只有一个字符。http://%1$1应该是http://%1/$1。否则www.example.com/directory/将成为example.comdirectory/。我会自己编辑,但只有一个字符。http://%1$1应该是http://%1/$1。否则www.example.com/directory/将成为example.comdirectory/。我会自己编辑,但只有一个字符。http://%1$1应该是http://%1/$1。否则www.example.com/directory/将成为example.comdirectory/。我会自己编辑,但只有一个字符。
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1$1 [R=301,L]
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]