vps上有2个网站,一个是全站ssl,一个是普通的,apache配置文件:
<VirtualHost *:443>
DocumentRoot "/var/www/html"
ServerName
def.net ServerAdmin def@gmail.com
ErrorLog "/var/log/error_log_1"
TransferLog "/var/log/access_log_2"
#Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile /root/ssl/xx.crt
SSLCertificateKeyFile /root/ssl/xx.key
SSLCertificateChainFile /root/data/xx.pem
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/xxx"
ServerName
abc.com ServerAdmin abc@gmail.com
ErrorLog "/var/log/error_log_3"
TransferLog "/var/log/access_log_4"
</VirtualHost>
因为指定了443到def.net,
80到abc.com,导致访问错误
直接访问def.net到了abc.com,加上https://def.net是正常的.
访问abc.com自动跳到了https://
def.netdef网站的 /var/www/html/.htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php\?p=$1 [QSA,L]
RewriteEngine On
RewriteCond %{HTTPS} !on [NC]
RewriteCond %{HTTP_USER_AGENT} !(baiduspider|soso|bing|sogou|yahoo|sohu-search|yodao|robozilla|msnbot|msie|feedburner) [NC]
RewriteRule (.*)
https://def.net%{REQUEST_URI} [R=301,NC,L]
</IfModule>
网上copy来的
要实现的是
1.
访问def.net,
http://def.net,https://def.net都跳到https://
def.net2. 访问abc.com能正常访问对应的网站内容
求指导,网上搜索一圈没遇到相同的问题.
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://tanronggui.xyz/t/164490
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.