小編的世界 優質文選 主機
字體大小:
2020年10月24日 -
:
51CTO
如何安裝和配置服務器?您將文件放置在哪裏?
不妨介紹這方面,每次一個步驟。我將在Ubuntu Server 20.04上進行演示。
不過先介紹一點基礎知識。
基於Ubuntu的發行版和基於Red Hat的發行版之間的區別
之所以要指定我使用哪個Linux發行版,是因為對於Apache而言,基於Ubuntu的發行版和基於Red Hat的發行版從安裝到配置都不一樣。比如說,在基於Red Hat的發行版上,Apache通過httpd軟件包安裝,而在基於Ubuntu的發行版上,apache2軟件包就能完成這項任務。另一個區別是在何處以及如何配置Apache。在基於Red Hat的發行版中,許多Apache配置將在/etc/httpd/conf/httpd.conf中進行。而在基於Ubuntu的發行版中,配置位於/etc/apache2/apache2.conf和/etc/apache2/sites-available/中。還有更多的差異,不過您應大致明白了。
如何在Ubuntu服務器上安裝Apache?
可以通過多種方式在Ubuntu上安裝Apache。如果您只需要基本的服務器軟件,可以打開終端、執行以下命令:
sudo apt-get install apache2 -y
然而,如果您想要一套成熟的Linux Apache MySQL PHP(LAMP)堆棧,可以執行以下命令:
sudo apt-get install lamp-server^
一旦運行上述任何一個命令,可啟動並運行Apache。您還需要確保啟用Apache,以便服務器重啟(或引導)後開始運行。為此,執行以下命令:
sudo systemctl enable apache2
可以通過打開Web瀏覽器並將其指向http://SERVER_IP(其中SERVER_IP是托管Apache的服務器的IP地址),驗證安裝。您會看到Apache歡迎頁面(圖A)。
圖A. 在Ubuntu服務器上運行的官方Apache歡迎頁面
Apache提供的是什麼頁面?如果您查看/var/www/html,會找到index.html文件,對其進行更改。
返回終端窗口,使用以下命令重命名該index.html文件:
sudo mv /var/www/html/index.html /var/www/html/index.html.bak
現在,不妨創建一個新的歡迎文件。執行以下命令:
sudo nano /var/www/html/index.html
在該文件中,粘貼以下內容:
<!DOCTYPE html>
<html>
<body>
<h1>Hello, TechRepublic!</h1>
<p>How are you doing?</p>
</body>
</html>
保存並關閉文件。在瀏覽器中重新加載該網頁,您應該會看到變化(圖B)。
圖B. 我們新的index.html頁面由Apache提供
如何為Apache創建網站?
我們現在要做的是創建一個虛擬主機供Apache服務。虛擬主機是Apache所服務的網站的俗稱。可以在單單一台Apache服務器上提供眾多虛擬主機。實際上,您只受限於托管服務器的功能和網絡的帶寬。
因此,不妨創建一個名為test的虛擬主機。
我們要做的第一件事是使用以下命令創建一個容納測試的目錄:
sudo mkdir -p /var/www/html/test
接下來,我們將使用以下命令為新目錄賦予適當的所有權:
sudo chown -R $USER:$USER /var/www/html/test
最後,我們將使用以下命令授予適當的權限:
sudo chmod -R 755 /var/www/html/test
使用以下命令將新的index.html文件拷貝到測試目錄中:
sudo cp /var/www/html/index.html /var/www/html/test/
現在我們要創建虛擬主機配置,以便Apache知道測試在哪裏。測試將位於/etc/apache/sites-available中。為此,我們將使用以下命令創建test.conf文件:
sudo nano /etc/apache2/sites-available/test.conf
在該文件中粘貼以下內容:
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/test
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
上面最重要的一行以DocumentRoot開頭,這指示Apache在何處可以找到虛擬主機的文件。保存並關閉該文件。
至此,我們已創建了容納文件的目錄,賦予了適當的所有權和權限,並為虛擬主機創建了配置。然而,Apache仍然不知道新網站。為什麼?因為配置文件位於sites-available中。我們要做的是從該配置創建一個鏈接到/etc/apache2/sites-enabled目錄。僅在sites-available中找到的那些配置才在Apache服務器上處於活動狀態。
在非Ubuntu服務器上,您要使用ln(代表link)命令來執行此操作。然而,Ubuntu上有一個方便的實用程序,它將為您創建該網站。這個實用程序就是a2ensite。如果我們運行命令:
sudo a2ensite test.conf
我們的測試虛擬主機隨後將被啟用。
該命令成功執行後,您要使用以下命令重新加載Apache(它將僅重新加載配置文件,而不重新啟動Web服務器):
sudo systemctl reload apache2
現在,如果您將瀏覽器指向http://SERVER_IP/test(其中SERVER_IP是服務器的IP地址),應該會看到與使用基本的index.html文件相同的Hello,TechRepublic歡迎信息,只是它是從新創建的虛擬主機提供的。
您剛安裝了Apache Web服務器,編輯了index.html文件,然後創建了自己的虛擬主機。您可以進而創建啟用所需的Apache服務的所有網站。