我非常擅长更改apache设置和修改httpd.conf。我已经安装了SSL,并尝试将动态子域重定向到HTTPS。
<VirtualHost *:80>
ServerName catchall.mydomain.com
ServerAlias *.mydomain.com
VirtualDocumentRoot /var/www/html/places/
Options -MultiViews
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /places/index.php?request=$1 [L]
</VirtualHost>
<VirtualHost *:443>
ServerName catchall.mydomain.com
ServerAlias *.mydomain.com
DocumentRoot /var/www/html/places/
SSLEngine on
SSLCertificateFile /SUPERSECRET
SSLCertificateKeyFile /SUPERSECRET
SSLCertificateChainFile /SUPERSECRET
</VirtualHost>
如果我去example.mydomain.com页面确实正确加载,但它不会重定向HTTPS。我尝试了多种更改,改变重写条件和规则的位置,我在进行更改后重新启动httpd服务。非常感谢任何帮助。
答案 0 :(得分:0)
越来越多地搜索stackoverflow后,我能够缩小我的问题范围。
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /places/index.php?request=$1 [L]
现在这是正确的格式。我希望这有助于其他人。