我正在使用 Apache 站点将 HTTPS 子域重定向到其他 HTTPS 子域,但是当我启用它时,浏览器上出现了重定向循环。
初始情况如下:
https://example1.domain.com和https://example2.domain.com显示相同的内容。VirtualHost配置如下:
<VirtualHost *:443> ServerName example1.domain.com ServerAlias example2.domain.com DocumentRoot /srv/www/example1.domain.com/current/public SSLEngine on SSLCertificateFile /srv/ssl/certs/server.crt SSLCertificateKeyFile /srv/ssl/certs/server.keyal </VirtualHost>
理想的情况是 example2.domain.com 重定向到 example1.domain.com,并且应用程序只有一个访问点。我正在尝试使用以下 VirtualHohst 配置:
<VirtualHost *:443> ServerAlias example2.domain.com Redirect permanent / https://example1.domain.com/ SSLEngine on SSLCertificateFile /srv/ssl/certs/server.crt SSLCertificateKeyFile /srv/ssl/certs/server.key </VirtualHost> <VirtualHost *:443> ServerName example1.domain.com DocumentRoot /srv/www/example1.domain.com/current/public SSLEngine on SSLCertificateFile /srv/ssl/certs/server.crt SSLCertificateKeyFile /srv/ssl/certs/server.key </VirtualHost>
但此时我在浏览器上遇到了重定向循环。
关于这个问题有一些想法吗?
答案1
改变
服务器别名 example2.domain.com
到
服务器名称 example2.domain.com
从技术上讲,这不是别名。我不再使用 Apache,但似乎因为你告诉它它是一个别名,它就会不断寻找服务器名称,因此出现重定向循环。