我从http站点重定向到https站点时遇到问题。
这个index.php文件在根文件夹中,重定向到一个subler:
<?php
header("Location: /news/");
?>
这url https://www.example.com
被正确地重定向到https://www.example.com/news/
这url https://www.example.com/index.php
被正确地重定向到https://www.example.com/news/
这url http://www.example.com/index.php
被正确地重定向到https://www.example.com/news/
然而,url http://www.example.com
显示的是一个空目录,如下图所示:
以下是配置文件:
/etc/apache 2/站点可用/www.示例.com.conf
<VirtualHost *:*>
ServerName www.example.com
DocumentRoot /var/www/vhosts/example.com/httpdocs
ServerAlias example.com
RewriteEngine on
RewriteCond %{SERVER_NAME} =example.com [OR]
RewriteCond %{SERVER_NAME} =www.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
/etc/apache 2/站点可用/www.示例.com-le-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName www.example.com
DocumentRoot /var/www/vhosts/example.com/httpdocs
ServerAlias example.com
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
</VirtualHost>
</IfModule>
如何正确地从http://www.example.com
重定向到https://www.example.com/news/
?
2条答案
按热度按时间a0x5cqrl1#
一个有两个选项--虚拟主机重定向和请求重写。根据您的需要调整以下配置片段。
虚拟主机重定向
更简单、更安全。* 通过虚拟主机配置将HTTP虚拟主机(端口80)重定向 * 到HTTPS虚拟主机(端口443):
请求重写
或者--通常,当虚拟主机配置不可访问时--可以编辑
.htaccess
文件(如果需要,创建它)来 * 重写 * HTTP到HTTPS请求。在
httpd.conf
中必须设置(通常默认情况下设置)。然后添加到.htaccess
文件:pqwbnv8z2#
我用了:
在conf文件中键入代码。