1. 程式人生 > >Linux Apache主配置域名和擴充套件的第一個配置域名都訪問到第一個配置域名的路徑

Linux Apache主配置域名和擴充套件的第一個配置域名都訪問到第一個配置域名的路徑

Apache配置虛擬主機,開啟擴充套件後要重新配置 主配置虛擬主機,不然其域名就會預設訪問擴充套件配置的第一個虛擬主機根目錄。

我的Apache主配置檔案:

    vi /etc/httpd/httpd.conf

    ServerName linuxhost

    DocumentRoot "/www/linuxhost"

    <Directory "/data/www">
        Options +Indexes +FollowSymLinks +ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
        Require all granted

</Directory>
......
設定預設訪問檔案:
DirectoryIndex

index.html index.php
......

Include去掉註釋#,開啟擴充套件配置

#Include /etc/httpd/extra/httpd-vhosts.conf

Apache擴充套件配置檔案:/etc/httpd/extra/httpd-vhosts.conf

<VirtualHost *:80>
            ServerName bike
            DocumentRoot "/www/bike"
    ErrorLog "logs/bike.com-error_log"
    CustomLog "logs/bike.com-access_log" common

        <Directory />
            Options +Indexes +FollowSymLinks +ExecCGI
            AllowOverride All
            Order allow,deny
            Allow from all
            Require all granted
        </Directory>

</VirtualHost>

這裡因為開啟了擴充套件配置,所以訪問主配置目錄linuxhost下的index.php,
        會預設訪問到預設配置的第一個虛擬主機目錄裡的index.php(未在擴充套件配置為:ServerName linuxhostd的虛擬主機時)。
            上例訪問網站根目錄時:
                主配置:    ServerName linuxhost    DocumentRoot "/www/linuxhost"
                擴充套件:        ServerName bike            DocumentRoot "/www/bike"
                未重新配置linuxhost,訪問linuxhost會跳到bike的配置路徑:/www/bike
       

但是使用ip(192.168.1.58)在瀏覽器訪問時,一樣出現了這樣的問題:我照著上述方法配置了:

                ......

                ServerName 192.168.1.58

                ......

同樣能行,就這樣使用了。。。