Linux系统apache服务

该文详细介绍了ApacheWeb服务器的安装过程,包括RPM和源码两种方式,并强调了配置静态IP、关闭防火墙和SELinux的步骤。此外,还讲解了如何设置主配置文件,如定义监听端口、用户组、访问权限、文档根目录以及默认主页。文章还涉及了虚拟主机的配置,包括基于IP、端口和域名的多种方法,以及错误日志和访问日志的管理。
摘要由CSDN通过智能技术生成

一、概述

   Web服务器的中间件

   用于构建静态web站点

   默认版本2.4.6(可根据所在的网络环境下载安装与之兼容的版本)

二、应用场景

   Web服务器、后台解析、视频站点、博客等等

三、安装流程

   配置静态IP地址

   关闭防火墙和SELinux

   安装软件

四、安装方式

  1. rpm/yum安装

   rpm安装:rpm -ivh httpd...rpm  (安装过程中需解决依赖关系)

   yum安装:yum -y instart httpd

     主配置文件:/etc/httpd/conf/httpd.conf

         Listen 80(定义apache的监听端口)

         User apache (定义运行用户和运行组

         Group apache   运行用户:程序需运行时哪个用户打开的程序文件)

        ServerName wwwexample.com:80

(定义web服务使用域名访问)

           Require all denied;Require all granted

             (定义访问权限 denied:不能访问

granted:可以访问)

           DocumentRoot“/var/www/heml”

             (定义文档根目录)

           Directorylndex index.html

              (定义默认访问主页)

     2.源码安装

先解压软件包:tar -xzf 软件包名

再配置:./configure --prefix=/usr/local/apache

 (此过程中可能会报错,需解决依赖关系)

  依赖关系有:yum -y install apr apr-util apr-util-devel gcc gcc-c++ pcre-devel zlib-devel

五、源码安装后的配置方法

   优化命令路径

将安装目录的启动命令链接到/usr/local/bin

ln -s /usr/local/apache/bin/apachectl /usr/local/bin/apachectl

   配置文件:/usr/local/apache/conf/httpd.conf

     ServerRoot”/usr/local/apache” 

(定义apache安装路径)

Listen 80 (定义apache监听端口)

LoadModule(加载apache运行时的必要模块文件)

User deamon(定义运行用户和运行组

Group daemon  运行用户:程序需运行时哪个用户打开的程序文件)

ServerName www.example.com:80

(定义web服务使用域名访问)

Require all denied ;Require all granted

 (定义访问权限;denied:不能访问  

granted:可以访问)

DocumentRoot”/usr/local/apache/htdocs”

(定义文档根目录)

Directorylndex index.html

 (定义默认访问主页)

ErrorLog”logs/error_log” (定义:错误日志路径;

Loglevel warn                错误日志级别;

LogFornat                   日志格式;

GustomLog                  访问日志)

六、启动测试

   先测试连通性(启动服务,网页打开看是否可进入)

   使用apachectl命令进行管理

七、虚拟主机头

   修改方式

     修改主配置文件:vim /usr/local/apache/conf/httpd.conf

         声明监听不同的IP地址的80端口

         开启使用虚拟主机文件的选项

           # Virtual hosts

           lnclube conf/extya/httpd-vhosts.conf

主配置文件包含虚拟主机配置文件:

  vim /usr/local/apache/conf/extra/httpd-vhosts.conf

 实现方法

   基于不同的IP地址:

例:

<VirtualHost 192.168.20.1:80>      #IP及端口

    ServerAdmin webmaster@dummy-host.example.com

    DocumentRoot "/usr/local/apache/htdocs/web1"       #打开路径

#    ServerName dummy-host.example.com       #域名/别名

#    ServerAlias www.dummy-host.example.com

    ErrorLog "logs/20.1-error_log"      #错误日志路径

    CustomLog "logs/20.1-access_log" common       #访问日志

</VirtualHost>

<VirtualHost 192.168.20.2:80>

    ServerAdmin webmaster@dummy-host2.example.com

    DocumentRoot "/usr/local/apache/htdocs/web2"

#    ServerName dummy-host2.example.com

    ErrorLog "logs/20.2-error_log"

    CustomLog "logs/20.2-access_log" common

</VirtualHost>

[root@localhost conf]# apachectl start       #启动服务
 

  基于不同端口:

例:

<VirtualHost 192.168.1.1:8081>

    ServerAdmin webmaster@dummy-host.example.com

    DocumentRoot "/usr/local/apache/htdocs/web1"

#    ServerName dummy-host.example.com

#    ServerAlias www.dummy-host.example.com

    ErrorLog "logs/8081-error_log"

    CustomLog "logs/8081-access_log" common

</VirtualHost>

<VirtualHost 192.168.1.1:8082>

    ServerAdmin webmaster@dummy-host2.example.com

    DocumentRoot "/usr/local/apache/htdocs/web2"

#    ServerName dummy-host2.example.com

    ErrorLog "logs/8082-error_log"

    CustomLog "logs/8082-access_log" common

</VirtualHost>

[root@localhost apache]# vim conf/httpd.conf

Listen 192.168.20.1:8081         #更改主配置文件端口
Listen 192.168.20.1:8082
[root@localhost apache]# apachectl restart         #重启服务
 

  基于不同域名:

例:

<VirtualHost www.example.com:80>

    ServerAdmin webmaster@dummy-host.example.com

    DocumentRoot "/usr/local/apache/htdocs/web1"

    ServerName www.example.com

#    ServerAlias www.dummy-host.example.com

    ErrorLog "logs/exam1-error_log"

    CustomLog "logs/exam1-access_log" common

</VirtualHost>

<VirtualHost www.example2.com:80>

    ServerAdmin webmaster@dummy-host2.example.com

    DocumentRoot "/usr/local/apache/htdocs/web2"

    ServerName www.example2.com

    ErrorLog "logs/exam2-error_log"

    CustomLog "logs/exam2-access_log" common

</VirtualHost>

[root@localhost ~]# vim /usr/local/apache/conf/httpd.conf 
Listen 192.168.20.1:80
[root@localhost ~]# yum -y install bind          #下载dns解析服务,下载完根据上面配置进行                                                                            正反解析配置

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

DNS1=192.168.20.1             #指定解析IP地址

[root@localhost ~]# ifdown ens33 && ifup ens33
[root@localhost apache]# systemctl start named

[root@localhost apache]# apachectl restart


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱笑的男孩0522

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值