Centos7下配置Apache的虛擬主機


一、虛擬主機

虛擬主機是Apache提供的一個功能,通過虛擬主機拉雅在一台服務器上部署多個網站。雖然服務器的IP地址是相同的,但用戶當用戶使用不同的域名訪問時,訪問到的是不同的網站。

下面講解Apache虛擬主機配置,當然,前提是你的CentOS已經安裝並配置好了Apache服務器。

二、搭建虛擬主機

1.創建目錄結構:

首先,我們需要創建一個目錄結構,以保存網站數據,為訪客提供服務。我們的文檔根目錄將被設置為在各個 /var/www/ 目錄中,我們將這里為我們的每個虛擬主機創建一個目錄。

在每個虛擬主機的目錄中,我們將創建一個 public_html 用於存放實際文件。我們可以使用如下命令創建目錄:

sudo mkdir -p /var/www/example.com/public_html

2.授予權限:

現在我們有了文件目錄結構,但是它們是由 root 用戶所擁有的,如果我們希望普通用戶能在我們的網頁目錄修改文件,我們可以改變文件的權限

sudo chown -R $username:$usergroup /var/www/example.com/public_html

此外,還應修改權限以確保允許對一般Web目錄及其中的所有文件和文件夾進行訪問,以便正確提供頁面。

sudo chmod -R 755 /var/www

3.為虛擬主機創建網站主頁:

我們只是要作出網站主頁 index.html 用以確保虛擬主機正確運行,創建一個新的 index.html 文件

vim /var/www/example.com/public_html/index.html

然后寫入代碼,這里我們只創建一個簡單的頁面:

<html>
<head>
<title>Welcome to example.com ! </title>
</head>
<body>
<h1>Success ! The example.com virtual host is working !</h1>
</body>
<html>

保存並關閉文件。

4. 創建新的虛擬主機文件:

虛擬主機文件是指定我們單獨站點的配置,並指定 Apache Web 服務器如何響應各種域請求。

首先,我們將創建虛擬主機的存儲目錄,以及告知 Apache 虛擬主機准備好向訪問者提供的目錄。我們將創建兩個目錄,其中 sites-available 目錄將保存我們所有的虛擬主機文件,而 sites-enabled 目錄將舉行符號鏈接。我們可以通過如下 bash 命令創建這兩個目錄:

sudo mkdir /etc/httpd/sites-available
sudo mkdir /etc/httpd/sites-enable

然后,我們要 Apache 查找虛擬主機 sites-enable 目錄,為實現這一點,我們將編輯Apache的主配置文件 /etc/httpd/conf/httpd.conf 在文件的末尾添加:

IncludeOptional sites-enable/*.conf

接下來我們就可在存儲目錄中創建我們的擬主機文件了,使用root權限打開新文件:

sudo vim /etc/httpd/sites-available/example.com.conf

然后寫入虛擬主機的配置:

<VirtualHost *:80>    #監聽端口為80
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/pubilc_html
ErrorLog /var/www/example.com/error.log
CustomLog /var/www/example.com/requests.log combined
</VirtualHost>

5.啟用新的虛擬主機:

現在我們已經創建了虛擬主機文件,我們需要啟用他們呢,以便Apache知道將它們提供給訪問者。要做到這一點,我們可以創建一個符號鏈接在每個虛擬主機的sites-enable 目錄:

sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enable/example.com.conf

完成后,重新啟動Apache以使這些更改生效:

sudo apachectl restart

6.設置本地主機文件愛(可選):

用於測試虛擬主機的功能,通過修改 /etc/hosts 文件,將所有對 www.example.com 的訪問直接傳遞給我們:

#server_ip_address example.com www.example.com
127.0.0.1 example.com www.example.com

然后測試我們的虛擬主機,在瀏覽器中鍵入 http://www.example.com 順利的話就能打開我們的測試的主頁文件。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM