使用Apache搭建Web网站服务器

   日期:2020-11-09     浏览:77    评论:0    
核心提示:使用Apache搭建Web网站服务器Apache服务Apache被研发于1995年,是纯开源软件。用于HTTP协议提供web浏览服务,可在Unix、Linux、Windows上运行。1、配置静态IPvim /etc/sysconfig/network-scripts/ifcfg-ens332、关闭防火墙或者安全模块systemctl disable firewalld #永久关闭防火墙systemctl stop firewalld #暂时关闭防火墙,重启虚拟机时防火墙会重新开启syst

使用Apache搭建Web网站服务器

Apache服务
Apache被研发于1995年,是纯开源软件。用于HTTP协议提供web浏览服务,可在Unix、Linux、Windows上运行。

1、配置静态IP

vim /etc/sysconfig/network-scripts/ifcfg-ens33

2、关闭防火墙或者安全模块

systemctl disable firewalld #永久关闭防火墙
systemctl stop firewalld  #暂时关闭防火墙,重启虚拟机时防火墙会重新开启
systemctl status firewalld  #查看防火墙状态
vim /etc/selinux/config #enforcing改为disabled,永久关闭安全模块

3、Apache安装:
方法一:
编译安装:RPM
方法二:
配置yum源进行yum安装:

yum -y install httpd  #安装httpd
rpm -ql httpd | less #查看安装文件的所有

4、httpd软件的配置

vim /etc/httpd/conf/httpd.conf #无需修改
:q #浏览完退出编译模式

Apache配置文件:

ServerRoot "/etc/httpd"		#httpd服务的安装目录
Listen 80				#默认监听TCP协议80端口
Include conf.modules.d/*.conf	#定义模板文件
User apache			#定义服务运行用户
Group apache			#定义服务运行组
ServerAdmin root@localhost	#定义服务管理员

<Directory />			#定义服务根目录的访问权限
    AllowOverride none		#网站重写功能
    Require all denied		#定义为拒绝访问
</Directory>

DocumentRoot "/var/www/html"	#定义网站根目录【文档】根目录
<Directory "/var/www">		#定义网站根目录的权限
    AllowOverride None		
    Require all granted		#定义允许所有用户访问
</Directory>

<Directory "/var/www/html">	#定义目录访问权限
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted		#定义允许所有用户访问
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error_log"		#访问错误日志的存储路径
LogLevel warn
<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
    CustomLog "logs/access_log" combined
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig /etc/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

AddDefaultCharset UTF-8
<IfModule mime_magic_module>
    MIMEMagicFile conf/magic
</IfModule>

EnableSendfile on
IncludeOptional conf.d/*.conf

Apache的日志文件:

cd /var/log/httpd
ls
access_log #浏览到httpd下有成功日志
error_log  #浏览到httpd下有失败日志

启动httpd服务:

systemctl start httpd

查看进程

ps aux | grep httpd

PID文件路径:

/etc/httpd/run --> /run/httpd/httpd.pid

访问文件目录:

/var/www/html
index.html  #默认文件名称
echo "hello" > index.html

httpd访问方式:
(1)Windows浏览器直接访问
(2)Linux:
1. curl IP或域名进行访问,显示网页源代码,HTML语句
2. Firefox IP或域名 调用安装的Firefox去访问网站
3. elinks IP或域名,在终端打开一个简易页面。
安装elinks命令:yum -y install elinks
构建web虚拟主机
1、基于域名:同一IP不同主机域名进行访问不同文件根目录
配置hosts文件:

vim /etc/hosts
		192.168.139.140		www.test1.com
		192.168.139.140		www.test2.com

配置文件:

vim /usr/share/doc/httpd-*
vim httpd-vhost.conf #模板
vim /etc/httpd/conf/httpd.conf  #复制模板到这里面
<VirtualHost *:80>
    DocumentRoot "/var/www/html/test1"
    ServerName www.test1.com
    ErrorLog "/var/log/httpd/test1-error_log"
    CustomLog "/var/log/httpd/test1-access_log" common
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot "/var/www/html/test2"
    ServerName www.test2.com
    ErrorLog "/var/log/httpd/test2-error_log"
    CustomLog "/var/log/httpd/test2-access_log" common
</VirtualHost>
cd /var/www/html  #建立2个访问目录

mkdir test1 → vim index.html → 随意编辑一些内容
mkdir test2 → vim index.html → 随意编辑一些内容

firefox 192.168.139.140 #进入火狐浏览器,分别访问以下2个网址
192.168.139.140/test1
192.168.139.140/test2

做完以上操作需要重启httpd

systemctl restart httpd

2、基于不同IP:不同IP,相同端口,不同域名,访问不同文件根目录
给虚拟机添加网卡:

ifconfig ens36 up   #启动

配置ens36网卡:

cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens36
vim /etc/sysconfig/network-scripts/ifcfg-ens36#修改网卡配置信息

重启网卡:

systemctl restart network

配置hosts文件:

 vim /etc/hosts
		192.168.139.140:80		www.test1.com
		192.168.139.135:80		www.test2.com

配置文件:

 vim /usr/share/doc/httpd-*
 vim httpd-vhost.conf #模板
 vim /etc/httpd/conf/httpd.conf  #复制模板到这里面
#修改配置文件Listen 80为:
			Listen 192.168.139.140:80
			Listen 192.168.139.135:80
#在配置文件的最后添加代码:
<VirtualHost 192.168.139.140:80>
    DocumentRoot "/var/www/html/test1"
    ServerName www.test1.com
    ErrorLog "/var/log/httpd/test1-error_log"
    CustomLog "/var/log/httpd/test1-access_log" common
</VirtualHost>
<VirtualHost 192.168.139.135:80>
    DocumentRoot "/var/www/html/test2"
    ServerName www.test2.com
    ErrorLog "/var/log/httpd/test2-error_log"
    CustomLog "/var/log/httpd/test2-access_log" common
</VirtualHost>

修改配置文件之后需要重启httpd

systemctl restart httpd

firefox 192.168.139.140 #进入火狐浏览器,分别访问以下2个网址
192.168.139.140:80/test1
192.168.139.135:80/test2
3、基于不同端口:不同端口,不同IP,不同域名访问不同文件根目录
配置hosts文件:

 vim /etc/hosts
		192.168.139.140:1061		www.test1.com
		192.168.139.135:1062		www.test2.com

配置文件:

 vim /usr/share/doc/httpd-*
 vim httpd-vhost.conf #模板
 vim /etc/httpd/conf/httpd.conf  #复制模板到这里面
#修改配置文件
Listen 192.168.139.140:1061
Listen 192.168.139.135:1062

<VirtualHost 192.168.139.140:1061>
    DocumentRoot "/var/www/html/test1"
    ServerName www.test1.com
    ErrorLog "/var/log/httpd/test1-error_log"
    CustomLog "/var/log/httpd/test1-access_log" common
</VirtualHost>
<VirtualHost 192.168.139.135:1062>
    DocumentRoot "/var/www/html/test2"
    ServerName www.test2.com
    ErrorLog "/var/log/httpd/test2-error_log"
    CustomLog "/var/log/httpd/test2-access_log" common
</VirtualHost>
systemctl restart httpd #修改配置文件之后需要重启httpd

firefox 192.168.139.140 #进入火狐浏览器,分别访问以下2个网址
192.168.139.140:1061/test1
192.168.139.135:1062/test2

4、httpd服务的访问限制:
客户端地址的限制
Require all granted : 允许所有用户都能访问
Require all denied :拒绝所有用户访问
Require local :只允许本机访问
Require [not] host <主机名或域名>:允许或者拒绝制定的主机或域访问
Require [not] ip <IP或IP网段>:允许或者拒绝制定的IP或IP网段访问
需要使用not拒绝访问时,添加配置:
< RequireAll >
Requitre not host 或者Requitre not ip
< /RequireAll >

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服