如題,直接進(jìn)入正文吧
Apache是世界使用排名第一的Web服務(wù)器軟件。它可以運(yùn)行在幾乎所有廣泛使用的計(jì)算機(jī)平臺(tái)上,由于其跨平臺(tái)和安全性被廣泛使用,是最流行的Web服務(wù)器端軟件之一。它快速、可靠并且可通過(guò)簡(jiǎn)單的API擴(kuò)充,將Perl,Python解釋器編譯到服務(wù)器中。來(lái)自于百度百科
之前弄了個(gè)域名,由于一直忘了備案,前幾天騰訊發(fā)通知,要求45天內(nèi)備案,于是今天下午備案了。這樣,域名不能解析了,而服務(wù)器也很久沒(méi)用了,里面沒(méi)什么重要東西(本地都有備份的),為了安全起見(jiàn),重新裝了系統(tǒng)。
雖然域名還在審核,但是想做個(gè)簡(jiǎn)單的網(wǎng)站還是不難的(現(xiàn)在搭建網(wǎng)站好像都要實(shí)名制并且備案了),我們使用Apache就可以做到了。
環(huán)境:Ubuntu Server 18.04.1 LTS 64位,Xshell
Apache 2的安裝
首先更新存儲(chǔ)庫(kù):
sudo apt-get update

之后安裝Apache2:
sudo apt install apache2
安裝過(guò)程出現(xiàn) (y/n) 時(shí),輸入y或者回車(chē)進(jìn)行安裝即可。

這里是我之前已經(jīng)安裝好了的。
接下來(lái),確認(rèn)是否安裝Apache2,并檢驗(yàn)其版本:
apache2 -version

表明已經(jīng)成功安裝Apache2了
Apache 2的配置
現(xiàn)在配置Apache,我們需要允許外部訪問(wèn)服務(wù)器的某些Web端口,并在服務(wù)器的UFW防火墻上允許Apache。
首先列出我們啟用Apache訪問(wèn)所需的應(yīng)用程序配置文件。
sudo ufw app list

三個(gè)Apache配置文件都提供不同級(jí)別的安全性; Apache是一個(gè)提供最大限制但端口80仍處于打開(kāi)狀態(tài)的Apache。
之后,在UFW上允許Apache并驗(yàn)證其狀態(tài)
sudo ufw allow 'Apache'

現(xiàn)在將在防火墻上顯示啟用Apache。
sudo ufw status

接下來(lái),驗(yàn)證Apache服務(wù)是否正在運(yùn)行。
sudo systemctl status apache2

狀態(tài):active(running)表示其正在運(yùn)行。
驗(yàn)證Apache是否正常運(yùn)行并偵聽(tīng)您的IP地址。
hostname -I

這里給出的ip是我服務(wù)器的內(nèi)網(wǎng)ip,在瀏覽器中是無(wú)法打開(kāi)的,而此時(shí)公網(wǎng)ip是可以解析的。
將你服務(wù)器的公網(wǎng)ip復(fù)制到瀏覽器的地址欄,打開(kāi):

顯示Apache默認(rèn)網(wǎng)頁(yè)。
在Apache中設(shè)置虛擬主機(jī)
虛擬主機(jī)類(lèi)似于Nginx中的服務(wù)器塊。 它用于管理來(lái)自一個(gè)服務(wù)器的多個(gè)域的配置。 我們將提供一個(gè)如何通過(guò)Apache服務(wù)器設(shè)置虛擬主機(jī)的示例。 我們將使用Apache for Ubuntu 18中默認(rèn)啟用的服務(wù)器塊來(lái)建立一個(gè)名為 ourtest.com(名字隨意) 的網(wǎng)站。
我們先看看這個(gè)默認(rèn)的apache網(wǎng)頁(yè)。
cd /var/www/html
ls
cat index.html
index.html 文件部分內(nèi)容如下:

仔細(xì)觀察,發(fā)現(xiàn)它顯示的內(nèi)容和默認(rèn)的apache網(wǎng)頁(yè)是一樣的,接下來(lái),我們來(lái)搭建個(gè)自己的網(wǎng)頁(yè)。
默認(rèn)情況下啟用的服務(wù)器塊能夠提供來(lái)自 /var/www/html的文檔。 但是,我們將在/var/www/ 創(chuàng)建一個(gè)目錄,同時(shí)保留默認(rèn)目錄。
通過(guò)以下命令創(chuàng)建此目錄,將ourtest.com替換為你自己的域名。
sudo mkdir -p /var/www/ourtest.com/html
然后通過(guò)以下命令分配目錄的所有權(quán):
sudo chown -R $USER:$USER /var/www/ourtest.com/html
sudo chmod -R 755 /var/www/ourtest.com

現(xiàn)在讓我們創(chuàng)建一個(gè)索引頁(yè)面,就可以訪問(wèn)它。 通過(guò) vi 編輯器或其他文本編輯器創(chuàng)建HTML文件。
vi /var/www/ourtest.com/html/index.html
為索引頁(yè)輸入一些內(nèi)容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>2019/2/13</title>
</head>
<body>
<h1>武漢加油,中國(guó)加油!</h1>
</body>
</html>

Apache需要一個(gè)虛擬主機(jī)文件來(lái)提供服務(wù)器的內(nèi)容。它已經(jīng)創(chuàng)建了用于此目的的默認(rèn)配置文件,但我們還是為其自定義配置創(chuàng)建一個(gè)新的配置文件。
sudo vi /etc/apache2/sites-available/ourtest.com.conf
輸入域名的以下自定義配置詳細(xì)信息:
<VirtualHost *:80>
ServerAdmin admin@ourtest.com
ServerName ourtest.com
ServerAlias www.ourtest.com
DocumentRoot /var/www/ourtest.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
更換的內(nèi)容為你自己的域名。


啟用使用a2ensite工具創(chuàng)建的配置文件:
sudo a2ensite ourtest.com.conf

輸出將建議激活新配置,但我們可以在運(yùn)行以下禁用原始配置文件的命令后集體執(zhí)行此操作:
sudo a2dissite 000-default.conf

現(xiàn)在重啟Apache服務(wù):
sudo systemctl restart apache2
最后,讓我們通過(guò)以下命令測(cè)試是否存在任何配置錯(cuò)誤:
sudo apache2ctl configtest

一切正常!
Apache服務(wù)器現(xiàn)在配置為你之前設(shè)置的域名。在Web瀏覽器中輸入你的服務(wù)器名稱來(lái)驗(yàn)證:
http://www.ourtest.com
呃......

有點(diǎn)尷尬...
我們來(lái)試試用公網(wǎng)ip吧。

這便是我們之前設(shè)定的頁(yè)面了,該文是我邊寫(xiě)邊操作的,我也沒(méi)想到這個(gè)域名被注冊(cè)了,理解萬(wàn)歲,理解萬(wàn)歲...
本文參考了Linux 公社的一篇文章,如何在Ubuntu 18.04上安裝和配置Apache 2 Web服務(wù)器
原文還有解決網(wǎng)頁(yè)中文亂碼的問(wèn)題,若出現(xiàn)相關(guān)問(wèn)題,可以查看并解決。