您能否阐明这个主题并解释这两种重定向 HTTP 流量的方法之间的区别,并帮助我选择一种更适合我的需求的方法。

您能否阐明这个主题并解释这两种重定向 HTTP 流量的方法之间的区别,并帮助我选择一种更适合我的需求的方法。

我正在学习网站托管,现在越来越多的 YouTube 资源建议将流量从 HTTP 重定向到 HTTPS。我找到了两种方法可以做到这一点,我想知道哪一种是 2023 年更好/首选的方法。

目前,我正在使用虚拟主机 .conf 文件将 HTTP 流量重定向到 HTTPS,因此目前我对 .htaccess 重定向不感兴趣。

第 2 种将 HTTP 重定向到 HTTPS 的方法是:

<VirtualHost *:80>
   ServerName firstsnow.dev
   ServerAlias www.firstsnow.dev
   DocumentRoot /var/www/first
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined

   Redirect permanent / https://firstsnow.dev/
</VirtualHost>

<VirtualHost *:443>
   ServerName firstsnow.dev
   ServerAlias www.firstsnow.dev
   DocumentRoot /var/www/first
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined

   <If "%{HTTP_HOST} == 'www.firstsnow.dev'">
      Redirect permanent / https://firstsnow.dev/
   </If>
# https://httpd.apache.org/docs/2.4/expr.html

SSLCertificateFile /etc/letsencrypt/live/firstsnow.dev/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/firstsnow.dev/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

我已经找到了这里。本文的日期为 2020 年 1 月,因此看起来像是最新的知识。

但是当我使用 CertBot 安装 SSL 证书时本教程,我注意到,CertBot 将这 4 行添加到我已有的converse.conf文件中(如下所示):

<VirtualHost *:80>
   ServerName converse.nexus
   ServerAlias www.converse.nexus
   DocumentRoot /var/www/conv
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined


RewriteEngine on
RewriteCond %{SERVER_NAME} =converse.nexus [OR]
RewriteCond %{SERVER_NAME} =www.converse.nexus
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
# https://httpd.apache.org/docs/2.4/expr.html

并创建了一个单独的converse-le-ssl.conf虚拟主机文件。

RewriteEngine与第一种Redirect permanent / https://firstsnow.dev/方法完全不同。
它不仅看起来和感觉不同,而且还使用%{SERVER_NAME}环境变量而不是%{HTTP_HOST}请求标头,我不明白为什么。

您能否阐明这个主题并解释这两种重定向 HTTP 流量的方法之间的区别,并帮助我选择一种更适合我的需求的方法。

我刚刚开始学习 Web 开发、Linux 管理和 apache2 虚拟主机。目前,我正在使用基于名称的虚拟主机运行 3 个非常简单的网站,第 4 个网站即将推出。

相关内容