http服務可以讓我們通過域名或者ip去訪問不同的信息,在linux系統環境下如何實現http服務的基礎搭建?
1.下載安裝httpd服務軟件:
yum install httpd -y
systemctl start httpd 啓動httpd服務
下載安裝httpd服務以後,系統中會出現/var/www/html/這個目錄,這是httpd服務的默認發佈目錄,在這個目錄下編輯的
文件,就是httpd服務默認發佈文件,最開始這個目錄下面是沒有文件的:
我們可以到/etc/httpd/conf/httpd.conf這個配置文件中查看httpd默認發佈文件的文件名,如圖爲index.html:
vim /var/www/html/index.html 運用vim編輯生成這個文件,自定義編輯內容:
然後保存退出, systemctl restart httpd 重啓httpd服務,設置火牆允許http或者直接關閉火牆,然後在另一臺ip爲同網段的
主機輸入本機ip就可以看到文件中編輯的內容:
2.默認發佈目錄和默認發佈文件的更改:
mkdir /westso/html/ -p 新建目錄, vim /westos/html/hk 並在新建目錄下新建文件,自定義編輯內容:
然後輸入ls -dZ /var/www/html/查看默認發佈目錄的安全上下文,ls -dZ /westos/html/ 查看新建目錄安全上下文:
將新建目錄及目錄下的文件的安全上下文修改爲默認發佈目錄的安全上下文,才能夠被selinux通過:
vim /etc/httpd/conf/httpd.conf 編輯配置文件,將新建目錄和文件信息編輯進去:
將新建文件名編輯到配置文件中:
systemctl restart httpd 重新啓動httpd服務
在另一臺ip爲同網段的主機輸入本機ip就可以看到新建文件中編輯的內容:
3.訪問權限的限定與加密:
編輯/etc/httpd/conf/httpd.conf配置文件可以設定訪問權限,下圖設定爲只有ip爲172.25.254.121的本機可以訪問:
然後重啓httpd服務, systemctl restart httpd
然後本機可以訪問:
ip和本機同網段的主機訪問步時看不到文件中編輯內容:
設置加密訪問:
cd /etc/httpd/conf/ 切換到/etc/httpd/conf目錄下, 輸入htpasswd -cm authfile harry(自定義) 創建用戶並設置密碼,
如果已經建立了用戶,在建立新用戶的時候要將‘-cm ’中的c去掉,不然會覆蓋掉之前建立的用戶
輸入 cat authfile 可查看用戶及經過加密處理的密碼:
然後編輯配置文件 /etc/httpd/conf/httpd.conf ,編輯內容如下,並將 Require all granted 註釋掉,不然加密無效:
然後重啓httpd服務, systemctl restart httpd
訪問本機ip,就會出現如下圖所示的情況:
輸入用戶和密碼,纔可看到網頁中的內容:
4.創建http的虛擬主機:可以讓我們的一臺服務器在被訪問不同域名的時候顯示
不同的主頁
輸入 ss -antlpe | grep httpd 查看httpd服務默認端口爲80:
建立測試域名及文件:
創建下圖中的目錄和文件並編輯:
編輯hk.test.com下的文件index.html:
繼續新建編輯文件 vim /var/www/test/mk.test.com/index.html :
然後切換到 /etc/httpd/conf.d/目錄下:
新建並編輯: vim default.conf 內容如下圖及如示,DocumentRoot 爲查看文件路徑,CustomLog 爲日誌路徑,
combined 表示將日誌類型整合到一起,沒有指定的域名都默認會訪問到/var/www/html下的默認文件內容:
然後新建編輯 vim hk.conf
繼續新建編輯: vim mk.conf
然後在要訪問的主機上編輯本地解析文件: vim /etc/hosts
然後訪問文件中的三個域名,看到不同內容:
由於沒有指定,所以只能訪問到默認目錄下默認文件內容: