哇~~真的是你呀!今天是LINUX中的Apache

目录

前言

一、概述

二、Apache的安装 

1.安装方法

2.编译安装

 三、目录结构

1.yum安装

 2.编译安装

 四、虚拟主机头配置

1.基本配置

2.实现方式

五、配置文件的检查语法

六、配置https访问

七、访问测试



前言

Linux是一种自由开源的操作系统,广泛应用于服务器和嵌入式系统。Apache是一个开源的Web服务器软件。在Linux上搭建Web服务器的步骤如下:

1. 安装Linux操作系统。
2. 安装Apache软件包。
3. 配置Apache,包括监听端口、默认主页、虚拟主机等。
4. 启动、停止和重启Apache服务。
5. 将网站文件或应用程序放置在适当的目录下,并设置网站的配置文件。

通过以上步骤,您可以在Linux上建立起一个Apache Web服务器,用于托管网站或应用程序。


一、概述

Apache的作用概述: web服务器提供者,web中间件  、能够提供html文本文档的传输  、传输协议是http/https协议 其默认端口:80/443

二、Apache的安装 

1.安装方法

1)yum安装
   第一步: systemctl stop NetworkManager && systemctl disable NetworkManager 关闭网络图形管理工具
    第二步:ifdown ens33 && ifup ens33 重新读取网络配置文件
    第三步:yum install httpd -y

2)编译安装

步骤
    配置   ./configure
    编译   make
    安装   make install
    编译安装的卸载只需要删除对应的安装目录

2.编译安装

下面我以编译安装为例进行安装

1)收集适合操作系统的Apache软件包  网址Download - The Apache HTTP Server Project

2)查看是否安yum安装了httpd如果安装了就卸载

3)编译安装Apache

把下载好的源码包拖入终端

把源码包移动到当前目录并解压进入到解压后的文件进行安装

安装时会出现错误我们按照提示依次安装依赖,之后继续安装(此过程要重复多次直到不报错)之后输入make && make install ,他会自动创建目录,安装完成

 4)优化命令路径ln -s /usr/local/apache2/bin /usr/sbin

 5)优化启动服务管理

cp /usr/local/apache2/bin/apachectl /etc/init.d/apachedvim  /etc/init.d/apached,可以看到配置文件我们在第二行写入(运行等级),保存退出。输入 chkconfig --add  /etc/init.d/apached 查看一下是否支持可以使用systemd管理  systemctl  start apached

开机自启 chkconfig  --level 35 apached

 三、目录结构

1.yum安装

 /etc/httpd 安装主目录
        conf.modules.d 模块加载配置文件存储目录
        conf.d conf目录的附属目录
        conf  主配置文件存储目录(修改配置文件之前一定要备份!!!)
                httpd.conf
                    ServerRoot "/etc/httpd" 服务安装根目录
                    Listen 80 监听端口
                    Include conf.modules.d/*.conf 引用外部配置文件到当前文件中
                    User apache运行账户
                    Group apache  运行组
                    ServerName www.example.com:80 可用域名
                    DocumentRoot "/var/www/html" 网页文档根目录
                    DirectoryIndex index.html 默认访问首页

 /usr/sbin 命令目录

 /var/log/httpd日志目录
    日志级别:debug, info, notice, warn, error, crit,alert, emerg
    日志类型:访问日志access_log、 错误日志error_log

/var/www/html网页源码存放目录

/run/httpd  PID存储目录

/usr/share/doc/httpd-2.4.6模板配置文件
    httpd-vhosts.conf   虚拟主机头配置文件

 2.编译安装

/usr/local/apache2配置文件   conf
        extra     httpd-vhosts.conf   虚拟主机头配置
        httpd.conf  主配置其中代表的是:
                ServerRoot "/usr/local/apache2 服务安装根目录
                Listen 80 监听端口
                Include conf.modules.d/*.conf   引用外部配置文件到当前文件中
                User daemon 运行账户
                Group daemon  运行组
                ServerName www.example.com:80 可用域名
                DocumentRoot "/usr/local/apache2/htdocs"  网页文档根目录
                DirectoryIndex index.html   默认访问首页

 四、虚拟主机头配置

1.基本配置

yum安装
   (1) mkdir /etc/httpd/extra
    (2)cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf /etc/http/extra
    (3)vim /etc/httpd/conf/httpd.conf在文件末尾追加:
IncludeOptional extra/*.conf
    (4)将htpd.conf中Listen 80 注释掉
在httpd-vhosts.conf中加入:Listen 80

 编译安装
    (1)vim /usr/local/apache2/conf/httpd.conf中去掉注释:
Include conf/exta/httpd-vhosts.conf
    (2)将htpd.conf中Listen 80 注释掉
在httpd-vhosts.conf中加入:Listen 80

2.实现方式

基于不同的端口号

1)编辑我们的配置文件  vim /usr/local/apache2/conf/extra/httpd.vhosts.conf 之后再输入我们需要监听的端口 例如: Listen 80  Listen 81

 

 2)通过上面的操作我们的文件还是没有被加载,所以我对主配置文件进行操作vim /usr/local/apache2/conf/httpd.conf  找到我们主机头的配置文件目录将注释删除(如图),这样就可以读取我们之前修改的文件了

3)通过上面的操作后我们就可以在主机头配置文件中根据需要配置我们的虚拟主机了vim /usr/local/apache2/conf/extra/httped-vhosts.conf

 其中他们的含义分别是

<VirtualHost *:80>(描述的监听端口)
    ServerAdmin webmaster@dummy-host.example.com(当前你的管理员)
    DocumentRoot "/usr/local/apache2/docs/dummy-host.example.com"(默认访问的位置)
    ServerName dummy-host.example.com(名称)
    ServerAlias www.dummy-host.example.com(别名可以多个也可以注释)
    ErrorLog "logs/dummy-host.example.com-error_log"(错误日志,最好设置名称用来区别)
    CustomLog "logs/dummy-host.example.com-access_log" common(访问日志,最好设置名称用来区别)

建立不同的访问位置 如:

<VirtualHost *:80>

    ServerAdmin web1admin.ex.com

    DocumentRoot "/var/www/web1"

    ServerName web1.ex.com

    ServerAlias web01.ex.com

    ErrorLog "/var/log/httpd/web1.error_log"

    CustomLog "/var/log/httpd/web1.access_log" common

</VirtualHost>

<VirtualHost *:81>

    ServerAdmin web2admin.ex.com

    DocumentRoot "/var/www/web2"

    ServerName web2.ex.com

    ServerAlias web02.ex.com

    ErrorLog "/var/log/httpd/web2.error_log"

    CustomLog "/var/log/httpd/web2.access_log" common

</VirtualHost>

 基于不同的域名

cd /etc/httpd/extra  在编辑vim httpd-vhosts.conf

 Listen 80

如:

<VirtualHost *:80>

    ServerAdmin web1admin.ex.com

    DocumentRoot "/var/www/web1"

    ServerName web1.ex.com

    ServerAlias web01.ex.com

    ErrorLog "/var/log/httpd/web1.error_log"

    CustomLog "/var/log/httpd/web1.access_log" common

</VirtualHost>

<VirtualHost *:80>

    ServerAdmin web2admin.ex.com

    DocumentRoot "/var/www/web2"

    ServerName web2.ex.com

    ServerAlias web02.ex.com

    ErrorLog "/var/log/httpd/web2.error_log"

    CustomLog "/var/log/httpd/web2.access_log" common

</VirtualHost>

 基于不同的IP地址 

 cd /etc/httpd/extra/编辑vim httpd.vhosts.conf
                              输入Listen 192.168.115.128:80
                              Listen 192.168.115.135:80

  配置多地址
       (1) 修改ens33的配置文件
            IPADDR1=192.168.115.128
            PREFIX1=24
            IPADDR2=192.168.115.135
            PREFIX2=24
        (2)利用ens33的子接口实现
            临时   ifconfig ens33:0 192.168.115.136/24
            永久   cd /etc/sysconfig/network-scripts/
                      cp ifcfg-ens33 ifcfg-ens33:1
                      vim ifcfg-ens33:1

 

五、配置文件的检查语法

 httpd -t -f /usr/local/apache2/conf/httpd.conf

六、配置https访问

yum安装:
    httpd-vhosts.conf内容全部注释
    yum install -y mod_ssl
    cd /etc/httpd/conf.d/
    证书存储目录
        /etc/pki/tls
    vim ssl.conf
    systemctl restart httpd

七、访问测试

curl返回结果为html的源码 curl -I(大写i) 返回响应头

例如:firefox    https://192.168.115.128
按住ctrl + F5  深度刷新,忽略本地的浏览器缓存

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值