最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何使用Linux搭建web服務(wù)器

 更新時(shí)間:2023年12月21日 11:16:38   作者:網(wǎng)絡(luò)給個(gè)機(jī)會(huì)  
web?服務(wù)器提供的這些數(shù)據(jù)大部分都是文件,那么我們需要在服務(wù)器端先將數(shù)據(jù)文件寫(xiě)好,并且放置在某個(gè)特殊的目錄下面,這個(gè)目錄就是我們整個(gè)網(wǎng)站的首頁(yè),在?redhat?中,這個(gè)目錄默認(rèn)在/var/www/html,這篇文章主要介紹了如何使用Linux搭建web服務(wù)器,需要的朋友可以參考下

搭建web服務(wù)器 

www 簡(jiǎn)介

網(wǎng)址及 HTTP 簡(jiǎn)介

web 服務(wù)器提供的這些數(shù)據(jù)大部分都是文件,那么我們需要在服務(wù)器端先將數(shù)據(jù)文件寫(xiě)好,并且放置在某個(gè)特殊的目錄下面,這個(gè)目錄就是我們整個(gè)網(wǎng)站的首頁(yè),在 redhat 中,這個(gè)目錄默認(rèn)在/var/www/html。瀏覽器是通過(guò)你在地址欄中輸入你所需要的網(wǎng)址來(lái)取得這個(gè)目錄的數(shù)據(jù)的

  • URL:Uniform Resource Locator,統(tǒng)一資源定位符,對(duì)可以從互聯(lián)網(wǎng)上得到的資源的位置和訪問(wèn)方法的一種簡(jiǎn)潔的表示,是互聯(lián)網(wǎng)上標(biāo)準(zhǔn)資源的地址。
  • 網(wǎng)址格式:<協(xié)議>://<主機(jī)或主機(jī)名>[:port]/<目錄資源,路徑>
    • 瀏覽器常支持的協(xié)議有:http、https、ftp 等
    • 主機(jī)地址或者主機(jī)名:主機(jī)地址就是服務(wù)器在因特網(wǎng)所在的 IP 地址。如果是主機(jī)名的話,那么就需要域名解析了
    • 端口號(hào)(port):http 為 80,https 為 443 (IANA:互聯(lián)網(wǎng)數(shù)字分配機(jī)構(gòu))
    • 0-1023:眾所周知,永久地分配給固定的應(yīng)用程序使用,特權(quán)端口(只有管理員有權(quán)限啟用并讓進(jìn)程監(jiān)聽(tīng))
    • 1024-41951:亦為注冊(cè)端口,但要求不是特別嚴(yán)格,分配給程序注冊(cè)為某應(yīng)用使用:3306/TCP
    • 41952-60000:客戶端程序隨機(jī)使用的端口,動(dòng)態(tài)端口,或私有端口
  • http 請(qǐng)求方法:在 http 通信中,每個(gè) http 請(qǐng)求報(bào)文都包含一個(gè)方法,用以告訴 web 服務(wù)器端需要執(zhí)行哪些具體的動(dòng)作,這些動(dòng)作包括:獲取指定 web 頁(yè)面、提交內(nèi)容到服務(wù)器、刪除服務(wù)器上資源文件等。
  • 狀態(tài)代碼:由三位數(shù)字組成,第一個(gè)數(shù)字定義了響應(yīng)的類(lèi)別,且有五種可能取值。
    • 1xx:指示信息 —— 表示請(qǐng)求已接收,繼續(xù)處理
    • 2xx:成功 —— 表示請(qǐng)求已被成功接收、理解、接受
    • 3xx:重定向 —— 要完成請(qǐng)求必須進(jìn)行更進(jìn)一步的操作
    • 4xx:客戶端錯(cuò)誤 —— 請(qǐng)求有語(yǔ)法錯(cuò)誤或請(qǐng)求無(wú)法實(shí)現(xiàn)
    • 5xx:服務(wù)器端錯(cuò)誤 —— 服務(wù)器未能實(shí)現(xiàn)合法的請(qǐng)求
    • 常見(jiàn)狀態(tài)代碼、狀態(tài)描述的說(shuō)明如下:
    • 200 OK:客戶端請(qǐng)求成功
    • 400 Bad Request:客戶端請(qǐng)求有語(yǔ)法錯(cuò)誤,不能被服務(wù)器所理解
    • 401 Unauthorized:請(qǐng)求未經(jīng)授權(quán),這個(gè)狀態(tài)代碼必須和WWW-Authenticate 報(bào)頭域一起使用
    • 403 Forbidden:服務(wù)器收到請(qǐng)求,但是拒絕提供服務(wù)
    • 404 Not Found:請(qǐng)求資源不存在,舉個(gè)例子:輸入了錯(cuò)誤的URL
    • 500 Internal Server Error:服務(wù)器發(fā)生不可預(yù)期的錯(cuò)誤
    • 503 Server Unavailable:服務(wù)器當(dāng)前不能處理客戶端的請(qǐng)求,一段時(shí)間后可能恢復(fù)正常
  • HTTP 報(bào)文:http 報(bào)文中有很多行內(nèi)容,這些行的字段內(nèi)容都是由一些 ASCII碼串組成,但各個(gè)字段的長(zhǎng)度是不同的。http 報(bào)文可分為兩種,一種是從web 客戶端發(fā)往 web 服務(wù)器的 http 報(bào)文,稱(chēng)為請(qǐng)求報(bào)文。另外一種是從 web服務(wù)器發(fā)往 web 客戶端的報(bào)文,稱(chēng)為響應(yīng)報(bào)文

HTTP 協(xié)議請(qǐng)求的工作流程

(1)終端客戶在 web 瀏覽器地址欄輸入訪問(wèn)地址http://www.ceshi.com:80/index.html

(2)web 瀏覽器請(qǐng)求 DNS 服務(wù)器把域名 www.ceshi.com 解析成 web 服務(wù)器的 IP地址

(3)web 瀏覽器將端口號(hào)(默認(rèn)是 80)從訪問(wèn)地址(URL)中解析出來(lái)

(4)web 瀏覽器通過(guò)解析后的 ip 地址及端口號(hào)與 web 服務(wù)器之間建立一條 TCP連接

(5)建立 TCP 連接后,web 瀏覽器向 web 服務(wù)器發(fā)送一條 HTTP 請(qǐng)求報(bào)文

(6)web 服務(wù)器響應(yīng)并讀取瀏覽器的請(qǐng)求信息,然后返回一條 HTTP 響應(yīng)報(bào)文。

(7)web 服務(wù)器關(guān)閉 HTTP 連接,關(guān)閉 TCP 連接,web 瀏覽器顯示訪問(wèn)的網(wǎng)站內(nèi)容到屏幕上。

www 服務(wù)器的基本配置

使用yum命令查找httpd服務(wù)yum search httpd

下載安裝httpd服務(wù)yum install httpd.x86_64 -y

啟動(dòng)httpd服務(wù),并查看httpd服務(wù)狀態(tài)情況

systemctl start httpd
systemctl status httpd

在我們的物理機(jī)上做訪問(wèn)WEB網(wǎng)頁(yè)的實(shí)驗(yàn) 首先要保證物理機(jī)與虛擬機(jī)在同一個(gè)網(wǎng)段,而且能夠ping通

之后開(kāi)啟防火墻的80端口

[root@localhost redhat]# firewall-cmd --permanent --add-port=80/tcp
success
[root@localhost redhat]# firewall-cmd --permanent --add-service=http
success
[root@localhost redhat]# firewall-cmd --reload
success
[root@localhost redhat]# 

此時(shí)已經(jīng)可以在物理機(jī)的瀏覽器輸入虛擬機(jī)IP地址查看到HTTP的首頁(yè)
如果發(fā)現(xiàn)超時(shí)那就是因?yàn)榉阑饓Φ膯?wèn)題,檢查一下自己的虛擬機(jī)防火墻端口和服務(wù)都開(kāi)放了么
如果都開(kāi)放了還提示:HTTP/1.1 Forbidden被拒絕,意思是權(quán)限不夠,可以關(guān)閉物理機(jī)的防火墻試試

下面就可以開(kāi)始編輯配置文件來(lái)搭建個(gè)人網(wǎng)頁(yè)了

[root@x1 redhat]# cd /etc/httpd/conf
[root@x1 conf]# ls
httpd.conf  httpd.conf.bak  magic
[root@x1 conf]# vim httpd.conf

補(bǔ)充:命令模式下:set nu可以顯示文件行數(shù)
配置所有的訪問(wèn)請(qǐng)求都授權(quán)了

在httpd.conf這個(gè)配置文件中配置瀏覽器訪問(wèn)的網(wǎng)頁(yè)根目錄:可以自定義更改

開(kāi)放訪問(wèn)/var/www目錄的權(quán)限

Options Indexes FollowSymLinks語(yǔ)句:如果該虛擬目錄下沒(méi)有 index.html,瀏覽器會(huì)顯示該虛擬目錄的目錄結(jié)構(gòu),列出該虛擬目錄下的文件和子目錄。

AllowOverride None: 完全忽略.htaccess 文件(超文本文件)

設(shè)置瀏覽器默認(rèn)訪問(wèn)的網(wǎng)頁(yè)為index.html

創(chuàng)建一個(gè)簡(jiǎn)單的測(cè)試網(wǎng)頁(yè)

[root@x2 ~]# cd /etc/httpd/conf
[root@x2 conf]# ls
httpd.conf  magic
[root@x2 conf]# vim httpd.conf 
[root@x2 conf]# cd /var/www/html
[root@x2 html]# mkdir stu
[root@x2 html]# cd stu/
[root@x2 stu]# echo "this student score web">index.html
[root@x2 stu]# cat index.html 
this student score web

實(shí)驗(yàn)

實(shí)驗(yàn)一

搭建一個(gè) web 服務(wù)器,訪問(wèn)該服務(wù)器時(shí)顯示“hello world”歡迎界面。

[root@x2 ~]# echo hello world > /var/www/html/index.html
[root@x2 ~]# curl 192.168.80.130
hello world

實(shí)驗(yàn)二、基于多個(gè)虛擬主機(jī)IP、基于多個(gè)虛擬端口、基于個(gè)人Web站點(diǎn)的Web網(wǎng)站

1.搭建基于IP地址的虛擬主機(jī)

[root@localhost redhat]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# ls 
ifcfg-ens160
[root@localhost network-scripts]# vim ifcfg-ens160

在文件中的IP地址字段下面添加兩個(gè)IP地址

重啟網(wǎng)絡(luò)服務(wù),查看虛擬機(jī)的IP地址,發(fā)現(xiàn)確實(shí)多了兩個(gè)IP地址

[root@localhost network-scripts]# ifup ens160
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
[root@localhost network-scripts]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:6b:46:66 brd ff:ff:ff:ff:ff:ff
    inet 192.168.80.129/24 brd 192.168.80.255 scope global dynamic noprefixroute ens160
       valid_lft 1796sec preferred_lft 1796sec
    inet 192.168.80.100/24 brd 192.168.80.255 scope global secondary noprefixroute ens160
       valid_lft forever preferred_lft forever
    inet 192.168.80.200/24 brd 192.168.80.255 scope global secondary noprefixroute ens160
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe6b:4666/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

嘗試用物理機(jī)ping虛擬機(jī)新加的地址

配置虛擬主機(jī)IP地址的網(wǎng)頁(yè)訪問(wèn)主目錄和網(wǎng)頁(yè)index.html文件

[root@localhost network-scripts]# cd /var/www/
[root@localhost www]# mkdir 100 200
[root@localhost www]# echo 192.168.80.100 test website > 100/index.html 
[root@localhost www]# echo 192.168.80.200 test website > 200/index.html 

配置虛擬主機(jī)ip地址的httpd配置文件
回到配置文件的目錄下面,創(chuàng)建一個(gè)vhost目錄,里面專(zhuān)門(mén)存放虛擬IP地址的配置文件,然后在httpd服務(wù)的主配置文件中引用這個(gè)目錄

[root@localhost 100]# cd /var/www/200/
[root@localhost 200]# vim index.html 
[root@localhost 200]# cd /etc/httpd/conf
[root@localhost conf]# cd ..
[root@localhost httpd]# ls
conf  conf.d  conf.modules.d  logs  modules  run  state
[root@localhost httpd]# mkdir vhost
[root@localhost httpd]# cd vhost/
[root@localhost vhost]#  touch 100.conf 200.conf
[root@localhost vhost]# ls
100.conf  200.conf

配置虛擬主機(jī)IP的配置文件

[root@localhost vhost]# vi 100.conf 
[root@localhost vhost]# cat 100.conf 
<VirtualHost 192.168.80.100>
	DocumentRoot "/var/www/100"
	DirectoryIndex index.html
	<Directory "/var/www/100">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
</VirtualHost>
[root@localhost vhost]# vi 200.conf 
[root@localhost vhost]# cat 200.conf 
<VirtualHost 192.168.80.200>
	DocumentRoot "/var/www/200"
	DirectoryIndex index.html
	<Directory "/var/www/200">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
</VirtualHost>
[root@localhost vhost]# 

配置/etc/httpd/conf/httpd.conf主配置文件引用vhost目錄里的虛擬主機(jī)IP的.conf配置文件
補(bǔ)充:快捷鍵Shift+g可以直接到達(dá)文件最后一行
在主配置文件的末尾加上

重啟httpd服務(wù),在物理機(jī)瀏覽器查看虛擬主機(jī)IP的網(wǎng)頁(yè)配置

[root@localhost vhost]# systemctl restart httpd

2.搭建基于端口號(hào)的虛擬主機(jī)

首先創(chuàng)建網(wǎng)頁(yè)文件html

[root@localhost redhat]# cd /var/www/
[root@localhost www]# mkdir 8081 8082
[root@localhost www]# ls
100  200  8081  8082  cgi-bin  html
[root@localhost www]# echo 8081 port test web > 8081/index.html
[root@localhost www]# echo 8082 port test web > 8082/index.html

然后在vhost目錄下配置這兩個(gè)虛擬端口的配置文件

[root@localhost www]# cd /etc/httpd/
[root@localhost httpd]# 
[root@localhost httpd]# cd vhost/
[root@localhost vhost]# cp 100.conf 8081.conf
[root@localhost vhost]# cp 100.conf 8082.conf
[root@localhost vhost]# ls
100.conf  200.conf  8081.conf  8082.conf
[root@localhost vhost]# vi 8081.conf
[root@localhost vhost]# vi 8082.conf
[root@localhost vhost]# cat 8081.conf
<VirtualHost 192.168.80.129:8081>
	DocumentRoot "/var/www/8081"
	DirectoryIndex index.html
	<Directory "/var/www/8081">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
</VirtualHost>
[root@localhost vhost]# cat 8082.conf
<VirtualHost 192.168.80.129:8082>
	DocumentRoot "/var/www/8082"
	DirectoryIndex index.html
	<Directory "/var/www/8082">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
</VirtualHost>

配置/etc/httpd/conf/httpd.conf主配置文件引用vhost目錄里的虛擬主機(jī)IP的.conf配置文件,上面已經(jīng)寫(xiě)了這一步了,然后還要配置端口號(hào)

[root@localhost vhost]# vi ../conf/httpd.conf

在監(jiān)聽(tīng)端口低下添加監(jiān)聽(tīng)8081與8082端口

配置完成保存退出,防火墻運(yùn)行端口8081和8082通過(guò),重啟httpd服務(wù),測(cè)試虛擬端口是否可用

[root@localhost vhost]# firewall-cmd --permanent  --add-port=8081/tcp
success
[root@localhost vhost]# firewall-cmd --permanent  --add-port=8082/tcp
success
[root@localhost vhost]# firewall-cmd --reload 
success
[root@localhost vhost]# setenforce 0
[root@localhost vhost]# getenforce 
Permissive
[root@localhost vhost]# systemctl restart httpd

3.個(gè)人Web站點(diǎn)的發(fā)布

[root@localhost vhost]# cd /etc/httpd/conf.d
[root@localhost conf.d]# ls
autoindex.conf  README  userdir.conf  welcome.conf
[root@localhost conf.d]#  cp userdir.conf  userdir.conf.bak
[root@localhost conf.d]# vi userdir.conf

進(jìn)入文件目錄中修改一些配置

配置完成,重啟httpd服務(wù)

[root@localhost conf.d]# systemctl restart httpd

使用用戶user1訪問(wèn)個(gè)人網(wǎng)站
新增用戶user1,并設(shè)置密碼

[root@localhost conf.d]# useradd user1
[root@localhost conf.d]# passwd user1
Changing password for user user1.
New password: 
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password: 
passwd: all authentication tokens updated successfully.

創(chuàng)建個(gè)人站點(diǎn)網(wǎng)頁(yè)文件

[root@localhost conf.d]# su - user1
[user1@localhost ~]$ cd ..
[user1@localhost home]$ chmod -Rf 711 user1
[user1@localhost home]$  mkdir -p user1/public_html/
[user1@localhost home]$ echo user1 test website > user1/public_html/index.html

測(cè)試:

到此這篇關(guān)于如何使用Linux搭建web服務(wù)器的文章就介紹到這了,更多相關(guān)Linux搭建web服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

宣城市| 炎陵县| 黑龙江省| 拜城县| 鄯善县| 土默特左旗| 阿瓦提县| 兴城市| 托克托县| 长岛县| 合阳县| 巴林右旗| 时尚| 南投市| 甘孜县| 岱山县| 云安县| 招远市| 广丰县| 满洲里市| 陵川县| 新绛县| 马关县| 敦化市| 隆回县| 宿松县| 白朗县| 逊克县| 竹山县| 兴海县| 寿光市| 垫江县| 云和县| 四川省| 苗栗县| 铁力市| 尉犁县| 肃宁县| 渭源县| 新兴县| 巫溪县|