我在 AWS 中使用 bitnami 有一个 apache2 网络服务器。在我的bitnami.conf
文件中,我需要将所有 URL 重写为
https://www.example.com
我能够正确重定向以下内容
mydomain.com
http://example.com
www.example.com
但当 URL 是时https://example.com
它不会重定向到https://www.example.com.
我的配置是
<VirtualHost _default_:80>
DocumentRoot "/opt/bitnami/apache2/htdocs"
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ - [E=protossl:s]
RewriteCond %{HTTP_HOST} ^([a-z.]+)?example.com$ [NC]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule .? http://www.%example.com%{REQUEST_URI} [R=301,L]
RewriteRule /smecweb/(.*) /$1 [R=301]
RewriteRule ^(/(.*))?$ https://www.%{SERVER_NAME}/$1 [R,L]
我尝试在 中做类似的事情 <VirtualHost _default_:443>
,但是又恢复了原样。
有人能指出我在这里做错了什么吗?
答案1
您使用的RewriteCond
和RewriteRule
听起来不对。定义的服务器名称是什么?
您可以尝试这个配置:
Servername www.example.com
Serveralias example.com
RewriteEngine on
RewriteRule (.*) https://%{HTTP_HOST}$1 [L,R=301,QSA,NE]