Linux操作系统静态网站服务器搭建方法汇总-干货-爱代码爱编程
使用 Apache 服务部署静态网站
本文将完成:基于 httpd 服务程序实用功能的部署实验。包括:
(1)httpd 服务程序的基本安装部署
(2)网站主页和口令加密认证方式的实现 (3)基于 IP 地址、主机名(域名)、端口号部署虚拟主机
本文属实验环境,实验环境使用Vmware workstation中虚拟机完成演示。
Web网络服务:用户通过浏览器 --> 搜索到互联网中各种资源的服务
目前能够提供 Web 网络服务的程序有 IIS、Nginx 和 Apache
一、Apache 服务程序的部署
第一步:
挂载光盘。
挂载光盘命令:mount /dev/cdrom /mnt
第二步:
配置本地yum源
配置思路:
新建repo文件:vi /etc/yum.repos.d/xiaobo.repo
文件中插入如下内容:具体详解请猛搓
[bash]
name=xiaobo
baseurl=file:///mnt
enabled=1
gpgcheck=0
第三步:使用yum安装 Apache 程序,服务名为httpd
配置命令:yum install httpd -y
默认安装版本:查询命令 rpm -q httpd
httpd-2.4.6-67.el7.centos.x86_64
第四步:
启动httpd 服务程序并加入到开机启动项中
配置命令:systemctl start httpd && systemctl enable httpd
systemctl list-unit-files |grep enabled 查看开机启动服务
netstat -tunlp | grep httpd 查看端口是否开启
通过以上四步,基于Apache的网站服务程序已经搭建成功。
使用浏览器,输入web服务器IP地址可正常访问,服务器响应默认静态页面。
查看服务器IP地址:
配置命令:ifconfig
配置网络桥接方式:本人桥接vmnet0,自动获取IP地址,可提供局域网使用,需配置DHCP服务器。若无此环境可桥接VMnet1或vmnet8,手动配置IP地址即可访问web服务器。
二、httpd服务配置文件参数介绍
部署完网站程序,程序默认目录如下:
httpd.conf 参见参数描述如下:
vi /etc/httpd/conf/httpd.conf
过滤掉注释行内容,并输出到自定义的文件:
egrep -v "#|^$" /etc/httpd/conf/httpd.conf >1.conf
cat /etc/httpd/conf/httpd.conf >1.conf
三、网站服务器:虚拟主机功能
利用虚拟主机功能,可以把一台处于运行状态的物理服务器分割成多个“虚拟的服务器”。
Apache 的虚拟主机功能是服务器基于用户请求的不同:有三种访问方式
(1)IP 地址
(2)主机域名
(3)端口号
实现提供多个网站同时为外部提供访问服务的技术。
(1)基于 IP 地址
如果一台服务器有多个 IP 地址,而且每个 IP 地址与服务器上部署的每个网站一一对应, 这样当用户请求访问不同的 IP 地址时,会访问到不同网站的页面资源。
第一步:
给网卡配置多个IP地址。(已2个地址为例)
由于我的网络划分了子网,所以我的网关是172.28.91.254
网络测试通畅。
第二步:
在网站虚拟主机目录中定义2个地址的目录数据。
[root@localhost ~]# mkdir -p /var/www/html/ip63
[root@localhost ~]# mkdir -p /var/www/html/ip64
创建2个目录,用来存放不同ip访问的数据。
<VirtualHost 172.28.90.63>
DocumentRoot /var/www/html/ip63
ServerName www.20jiwang.com
<Directory /var/www/html/ip63 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.28.90.64>
DocumentRoot /var/www/html/ip64
ServerName bbs.20jiwang.com
<Directory /var/www/html/ip64 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
在httpd主配置文件中插入虚拟主机的相关目录映射信息。
配置完成后一定要重启httpd服务
[root@localhost ~]# systemctl restart httpd
写入2个ip地址默认首页数据
[root@localhost ~]# echo "此网站的虚拟主机IP地址为:172.29.90.63" > /var/www/html/ip63/index.html
[root@localhost ~]# echo "此网站的虚拟主机IP地址为:172.29.90.64" > /var/www/html/ip64/index.html
效果测试:
如需域名访问请结合DNS解析,这里已写hosts文件演示。
效果:
(2)基于域名
场景为Web网站服务器为一个IP地址,需为多个域名提供服务。(域名解析在生产环境需结合DNS使用,此文演示使用hosts文件)
编辑web服务器hosts文件
[root@localhost ~]# mkdir -p /var/www/html/www
[root@localhost ~]# mkdir -p /var/www/html/bbs
建立网站文件存放目录
修改httpd主配置文件,映射域名对应的目录
写本地hosts文件,目的用来测试。
效果测试:
(3)基于端口号
第一步:建立不同端口的对应网站数据目录。
[root@localhost ~]# mkdir -p /var/www/html/9091
[root@localhost ~]# mkdir -p /var/www/html/9090
第二步:在httpd主配置文件中增加监听端口
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201211121244144.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2p4YjUxMzY1MTYwOA==,size_16,color_FFFFFF,t_70
[root@localhost ~]# vi /etc/httpd/conf/httpd.conf
Listen 9091
Listen 9090
第三步:映射端口目录
[root@localhost ~]# vi /etc/httpd/conf/httpd.conf
<VirtualHost 172.28.90.63:9091>
DocumentRoot /var/www/html/9091
ServerName www.20jiwang.com
<Directory /var/www/html/9091 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.28.90.63:9090>
DocumentRoot /var/www/html/9090
ServerName bbs.20jiwang.com
<Directory /var/www/html/9090 >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
第四步:在selinux中放行监听端口9091和9090
[root@localhost ~]# semanage port -m -t http_port_t -p tcp 9091
[root@localhost ~]# semanage port -m -t http_port_t -p tcp 9090
第五步:监听端口放行防火墙
[root@localhost ~]# firewall-cmd --zone=public --add-port=9091/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=9090/tcp --permanent
[root@localhost ~]# firewall-cmd --reload
第六步:重启httpd服务
[root@localhost ~]# systemctl restart httpd
第七步:写入首页数据
[root@localhost ~]# echo "此网站端口为:8080" > /var/www/html/8080/index.html
[root@localhost ~]# echo "此网站端口为:9090" > /var/www/html/9090/index.html
第八步:测试
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/jxb513651608/article/details/110947643