我有一个在Ubuntu 12.04上运行的Apache2 Web服务器。 我所托pipe的网站的域名工作正常,如果您转到http版本而不是https版本,则会自动redirect到域的https版本。
但是,如果我去的域名的IP地址的http版本,它不会自动redirect到IP地址的HTTPS版本。
在.htaccess或httpd.conf文件中没有任何内容。
我已经尝试在.htaccess文件中专门添加一个redirect,但它不能正常工作,当我访问域时,它说有太多的redirect。
我有一个default-ssl文件和站点启用文件夹中的网站文件。 default-ssl具有用于端口443和ServerName的虚拟主机configuration
该网站文件具有虚拟主机configuration为端口80,但没有ServerName
两个文件都有相同的DocumentRoot
如何启用IP地址的httpsredirect,不仅是域?
如果你想redirect所有:80访问排除这些http://example.com :
<VirtualHost _default_:80> RewriteEngine On RewriteCond %{HTTP_HOST} !^example.com$ RewriteRule /.* https://example.com/ [R] </VirtualHost>
如果您想要redirect到http://example.com ,请执行以下操作:
<VirtualHost _default_:80> RewriteEngine On RewriteRule /.* https://example.com/ [R] </VirtualHost>
显然,如果你有其他的VirtualHost节,它可能永远不会到达_default_一个。
希望这可以帮助!