Linux系統中HTTP服務的搭建

HTTP服務搭建

1、掛載光盤

[root@localhost ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 is write-protected, mounting read-only

2、配置yum源

[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d
[root@localhost yum.repos.d]# vim base.repo

yum源配置:
[base]
name=base
baseurl=file:///mnt
enable=1
gpgcheck=0

3、安裝軟件包

[root@localhost ~]# yum install httpd -y

開啓HTTP服務,關閉防火牆,關閉seLinux
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0

4、查看HTTP服務的狀態

[root@localhost ~]# systemctl status httpd.service -l
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)  
   Active: active (running) since Tue 2019-07-23 10:19:37 CST; 9min ago							#運行狀態
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 14061 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─14061 /usr/sbin/httpd -DFOREGROUND
           ├─14062 /usr/sbin/httpd -DFOREGROUND
           ├─14063 /usr/sbin/httpd -DFOREGROUND
           ├─14064 /usr/sbin/httpd -DFOREGROUND
           ├─14065 /usr/sbin/httpd -DFOREGROUND
           └─14066 /usr/sbin/httpd -DFOREGROUND
詳細日誌信息:(如果服務沒有啓動成功,可以在此處查看HTTP協議的錯誤信息)
Jul 23 10:19:37 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Jul 23 10:19:37 localhost.localdomain httpd[14061]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
Jul 23 10:19:37 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Jul 23 10:20:16 localhost.localdomain systemd[1]: Started The Apache HTTP Server.

5、HTTP服務的配置文件

[root@localhost ~]# cd /etc/httpd/
[root@localhost httpd]# ll
total 4
drwxr-xr-x. 2 root root   35 Jul 23 10:11 conf											#主配置文件
drwxr-xr-x. 2 root root   78 Jul 23 10:11 conf.d										#子配置文件
drwxr-xr-x. 2 root root 4096 Jul 23 10:11 conf.modules.d
lrwxrwxrwx. 1 root root   19 Jul 23 10:11 logs -> ../../var/log/httpd					#日誌文件
lrwxrwxrwx. 1 root root   29 Jul 23 10:11 modules -> ../../usr/lib64/httpd/modules
lrwxrwxrwx. 1 root root   10 Jul 23 10:11 run -> /run/httpd								#運行文件

通過rpm -ql來查詢httpd服務的文件和路徑

[root@localhost ~]# rpm -ql httpd

查看主配置文件:

[root@localhost httpd]# cd conf
[root@localhost conf]# vim httpd.conf

 31 ServerRoot "/etc/httpd"							# HTTP服務的頂級目錄爲 /etc/httpd 
 42 Listen 80										#監聽web服務端的80端口
 56 Include conf.modules.d/*.conf					#包括 /etc/httpd/conf.modules.d/*.conf 的所有文件
 
 66 User apache										#服務的用戶,(ps -ef | grep httpd,先以root用戶把 /usr/sbin/httpd 服務啓動起來),啓動服務轉換身份,在啓動服務時通常以root身份,再轉換身份,這樣更加安全
 67 Group apache

86 ServerAdmin root@localhost						#你的郵箱地址,有問題發郵箱

102 <Directory />									#目錄爲根,<>爲開始,</>爲結束
103     AllowOverride none							#不允許這個目錄下的訪問控制文件來改變這裏的配置,這也意味着不用查看這個目錄下的控制文件
104     Require all denied							#拒絕訪問根
105 </Directory>									# 和 <Directory /> 爲一組標籤,意味着結束

119 DocumentRoot "/var/www/html"					# 網頁文件存放的目錄


124 <Directory "/var/www">							#目錄爲 /var/www
125     AllowOverride None							#不允許這個目錄下的訪問控制文件來改變這裏的配置
127     Require all granted							#允許訪問/var/www
128 </Directory>									#和<Directory "/var/www">一組標籤,意味着結束

191 <IfModule log_config_module>
196     LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
197     LogFormat "%h %l %u %t \"%r\" %>s %b" common
198
199     <IfModule logio_module>						#日誌模塊:通過事件節點去記錄
201       LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
202     </IfModule>

316 AddDefaultCharset UTF-8							# 默認定義字符集

配置子配置文件

[root@localhost httpd]# cd conf.d/
[root@localhost conf.d]# vim vhosts.conf			#新建一個以 .conf結尾的配置文件

配置文件:
  1 <directory /www>
  2         allowoverride none
  3         require all granted
  4 </directory>
  5 <virtualhost 192.168.218.128:80>
  6         servername 192.168.218.128				#基於IP地址對web服務器進行訪問
  7         documentroot /www
  8 </virtualhost>

6、編寫HTML文本語言到指定網頁位置:

[root@localhost ~]# mkdir /www
[root@localhost ~]# echo this is www = = >/www.index.html

7、網站訪問

[root@localhost ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.218.128  netmask 255.255.255.0  broadcast 192.168.218.255

在這裏插入圖片描述
注意事項
1、配置路徑:/etc/http/*,所有的 *.conf文件都是配置文件
2、服務在運行時,將配置文件看完之後,選擇後面的配置文件使用,如果一個端口監聽兩次的話,可能會出現端口被佔用的錯誤
3、apache是一個模塊話的一個配置服務,所以我們可以根據每個模塊進行一些配置,不僅對程序本身進行模塊化配置,對配置文件也進行了模塊化的配置
4、在配置時儘量不要在主配置文件中更改,防止出現錯誤無法更改
5、每次更改完配置文件後必須重啓服務[root@localhost ~]# systemctl restart httpd.service

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章