发表于:2026-06-28 |

项目8 搭建Apache服务器

Apache的安装与测试在完成本案例前,请先更换dnf源(请按ctrl并点击链接跳转访问):CentOS-Stream-9 CentOS9 配置国内yum源-阿里云源 - 知乎

(1)使用dnf命令直接在线安装

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

image260.png

(2)systemctl命令启动httpd服务,并设置httpd开机启动。

[root@localhost~]# systemctl start httpd      #启动httpd服务

[root@localhost~]# systemctl enable httpd    #设置开机自启动

[root@localhost~]# systemctl status httpd    #查看httpd服务状态

image261.png

(3)将http和https服务添加到防火墙中

3.1 #添加http服务

[root@xxx~]# firewall-cmd –permanent –zone=public –add-service=http

返回结果:success

3.2 #添加https服务

[root@xxx~]# firewall-cmd –permanent –zone=public –add-service=https

返回结果:success

3.3 #重启防火墙

[root@localhost~]# firewall-cmd –reload                  #重启防火墙

返回结果:success

(4)在windows本地浏览器地址栏中输入服务器(linux)的IP地址,测试Apache服务是否启动成功。

image262.png

修改Apache默认主页1.在/var/www/html目录下编写index.html文件,具体命令如下:

[root@localhost ~]# cd /var/www/html

[root@localhost html]# echo “欢迎来到Apache首页面!”>> index.html

2.在windows本地浏览器地址栏中输入服务器(Linux)的IP地址,测试Apache服务是否启动成功。

image263.png

3.修改主配置文件/etc/httpd/conf/httpd.conf,让Apache从Home目录的www目录读取网页数据文件,具体操作步骤如下:

3.1创建网页数据的保存目录,并创建首页面文件。

[root@localhost~]# mkdir /home/www

[root@localhost~]# mkdir /home/www/html

[root@localhost~]# cd /home/www/html

[root@localhost html]# echo “欢迎来到我的Apache首页面!(用户自己的首页面)”>>myindex.html

3.2编辑主配置文件

/etc/httpd/conf/httpd.conf,将124行的DocumentRoot配置项的值修改为/home/www/html,同时将129~133行的标签中路径也修改为/home/www/html。

3.2.1 先vim进入/etc/httpd/conf/httpd.conf

[root@localhost~]# vim /etc/httpd/conf/httpd.conf

3.2.2 使用”:set nu”命令,打开行号

image264.png

3.2.3 使用”:n”命令,找到第124行的位置

image265.png

3.2.4 编辑内容

将第124行的var替换成home,第129行的var替换成home

image266.png

3.3重启httpd服务。

[root@localhost html]# systemctl restart httpd

3.4在windows本地浏览器地址栏中输入服务器(Linux)的IP地址,测试Apache服务是否启动成功。

image267.png

这是因为:SELinux安全上下文不一致,SELinux禁止访问当前网页数据的存储目录。

3.5 禁用SELinux。

image268.png

搭建用户Web站点以linux用户为例,搭建linux用户的个人主页。

注意:我的用户名是linux,请根据自己的用户名将下面的linux替换成自己的用户名

(推荐)如果不想替换,就把自己用户名改成linux

具体操作方法,在书本上找之前用户管理章节的命令(usermod)

具体操作步骤如下:

(1)linux用户的家目录为/home/linux,修改家目录的权限,使其他用户具有读取和执行权限,修改家目录权限的命令如下:(注意空格)

[root@localhost ~]# chmod 755 /home/linux

(2)在/home/linux目录下创建html文件夹,并在html文件夹下创建linux.html个人首页文件。(注意这个linux.html改成你自己的用户名.html)

[root@localhost~]# mkdir /home/linux/html

[root@localhost~]# cd /home/linux/html

[root@localhost html]#echo “这是linux用户的个人主页”>> linux.html

(3)Apache服务器默认没有开启个人Web站点搭建功能,如果要搭建个人Web站点,需要修改/etc/httpd/conf.d/userdir.conf配置文件,主要进行以下3项配置。

[root@localhost ~]# vim /etc/httpd/conf.d/userdir.conf

•注释第17行代码(UserDirdisabled)。

注:输入:set nu设置显示行号

image269.png

•取消第24行代码(UserDirpublic_html)的注释,并将UserDir选项的目录修改为html。

image270.png

image271.png

•将第31行标签中的目录修改为/home/*/html。

修改完成之后,保存退出。

image272.png

输入 :wq 保存并退出

(4)由于Apache默认读取的首页文件为index.html,而我们搭建的linux用户的Web站点默认首页文件为linux.html

所以需要修改主配置文件/etc/httpd/conf/httpd.conf,在DirectoryIndex配置项(169行)后面添加linux.html文件。

image273.png

(5)禁用SELinux,重启httpd服务。

[root@localhost html]# setenforce 0

[root@localhost html]# systemctl restart httpd

(6)在浏览器地址栏输入http://你的ip地址/~linux,浏览器显示的linux用户个人主页

image274.png

配置基于域名的虚拟主机(1)在/var/www目录下分别创建两个目录web1和web2,并分别在两个目录下创建虚拟主机默认网页文件。

[root@localhost ~]# mkdir /var/www/web1

[root@localhost ~]# mkdir /var/www/web2

[root@localhost ~]# echo “这是>">www.web1.com虚拟主机主页!">> /var/www/web1/index.html

[root@localhost ~]# echo “这是>">www.web2.com虚拟主机主页!">> /var/www/web2/index.html

(2)新建/etc/httpd/conf.d/vhost.conf配置文件,使用标签为虚拟主机配置域名和访问目录。

#配置第一个虚拟主机信息

#注意,下面这个192.168.214.128要换成你自己的IP地址

<VirtualHost 192.168.214.128>

#配置访问目录

DocumentRoot “/var/www/web1”

#配置域名(请把下面的网址改成你自己的,中间那串字符,随便来)

ServerName www.hhg1.com

#配置第二个虚拟主机信息

<VirtualHost 192.168.214.128>

DocumentRoot “/var/www/web2”

#(请把下面的网址改成你自己的,中间那串字符,随便来)

ServerName www.hhg2.com

(3)为了使客户端也可以访问虚拟主机目录,需要在/etc/httpd/conf/httpd.conf主配置文件中设置虚拟主机目录的访问权限。在/etc/httpd/conf/httpd.conf主配置文件中添加一个标签。

<Directory “/var/www”>

AllowOverride None

Require all granted

(4)配置主机域名。

这是要在windows操作的

C:\Windows\System32\drivers\etc

复制 hosts文件到桌面

image275.png

改完后,复制回去刚刚的C:\Windows\System32\drivers\etc

上一篇:
下一篇: