我目前在一個 vps 上,我已將 9 個網域定向到。在 httpd.conf 檔案中我插入了這個
<VirtualHost*:80>
DocumentRoot /var/www/non.com
ServerName non.com
ServerAlias www.non.com
<Directory "/var/www/non.com">
Options -Indexes +FollowSymLinks
AllowOverride </Directory>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://non.com:443/$1 [R,L]
</VirtualHost*:80>
<VirtualHost*:80>
DocumentRoot /var/www/ne.com
ServerName ne.com
<Directory "/var/www/ne.com">
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://ne.com:443/$1 [R,L]
</VirtualHost*:80>`
我總是有同樣的問題
AH00526:/etc/httpd/conf/httpd.conf 第 349 行出現語法錯誤:命令「<VirtualHost*:80」無效,可能拼字錯誤或由未包含在伺服器設定中的模組定義
謝謝你的幫助
答案1
開啟標籤中的 t 和 * 之間缺少空格,並且關閉標籤時不包含 host:port 部分。
<VirtualHost *:80>
DocumentRoot /var/www/non.com
ServerName non.com
ServerAlias www.non.com
<Directory "/var/www/non.com">
Options -Indexes +FollowSymLinks
AllowOverride
</Directory>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://non.com:443/$1 [R,L]
</VirtualHost>
<VirtualHost*:80>
DocumentRoot /var/www/ne.com
ServerName ne.com
<Directory "/var/www/ne.com">
Options -Indexes +FollowSymLinks
AllowOverride All
</Directory>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://ne.com:443/$1 [R,L]
</VirtualHost>