Apache 设置端口重定向

1. 背景

今天收到了云服务商的邮件,说是根据历史的备案信息网站无法访问,突然想起在此之前配置 apache 时,默认的访问路径是不完整的,需要添加后缀才能访问到站点。同时,由于配置 SSL 证书后没有进行重定向,导致 http 访问时会被定向到 php 的测试界面。

2. 修改

2.1 更新默认站点的访问目录

(1)Ubuntu 下配置文件的访问路径为:

/etc/apache2/sites-available/

(2)通过文本编辑器修改配置文件:

vim 000-default.conf

(3)将 DocumentRoot 路径修改为站点的实际路径:

# DocumentRoot /var/www/html 默认是这个

DocumentRoot /var/www/YourAddress
2.2 将 http 重定向到 https

(1) 在 000-default.conf文件下,新建或修改<VirtualHost *:80></VirtualHost *:80> 下的内容:

    ServerName www.xxxx.com
    ServerAlias xxxx.com
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]

其中,RewriteEngine 代表开启 rewrite 功能,RewriteCond 代表当不是 https 时遵循下面的规则,
^(.*) https://%{SERVER_NAME}$1 [L,R]中的 ^代表匹配行的开始,$1引用RewriteRule中的第一个正则(.*)代表的字符, %{SERVER_NAME}就是监听的网站域名,[L]表示结尾标识,停止重写操作。R 代表强制外部重定向。

全部修改完成后,保存该配置文件。

2.3 开启重定向模块

sudo a2enmod rewrite

2.4 重启 apache2 服务

sudo systemctl restart apache2 或者

/etc/init.d/apache2 restart

3. 参考资料

Apache 配置 http 重定向

posted @ 2024-10-14 15:54  我说不上岸不改名  阅读(96)  评论(0)    收藏  举报