温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux下Apache服务如何部署和配置

发布时间:2021-12-20 09:08:39 来源:亿速云 阅读:837 作者:小新 栏目:开发技术

这篇文章主要为大家展示了“Linux下Apache服务如何部署和配置”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下Apache服务如何部署和配置”这篇文章吧。

    1 Apache的作用

    • 解析网页语言,如html,php,jsp等

    • 接收web用户的请求,并给予一定的响应

    2 Apache的安装

    安装apche软件:dnf install httpd.x86_64 -y

    Linux下Apache服务如何部署和配置

    3 apache的启用

    • 开启apache服务并设置开机启动:systemctl enable --now httpd

    • 查看apache服务的状态:systemctl enable --now httpd

    Linux下Apache服务如何部署和配置

    • 查看火墙信息:firewall-cmd --list-all 在火墙中永久开启http服务:firewall-cmd --permanent --add-service=http

    • 在火墙中永久开启https服务: firewall-cmd --permanent --add-service=https

    • 在不改变当前火墙状态的情况下刷新防火墙:firewall-cmd --reload

    Linux下Apache服务如何部署和配置

    4 apache的基本信息

    apche的基本信息

    • 服务名称:httpd

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

    • 子配置文件:/etc/httpd/conf.d/*.conf

    • 默认发布目录:/var/www/html

    • 默认端口:80 (http) ,443(https)

    • 日志文件:/etc/httpd/logs

    • 开启apche服务后,输入ip查看默认发布页面:

    Linux下Apache服务如何部署和配置

    (1)更改apche服务的端口号

    • 查看httpd服务的默认端口号:netstat -antlupe |grep httpd

    Linux下Apache服务如何部署和配置

    • 编辑配置文件: /etc/httpd/conf/httpd.conf,修改端口号

    Linux下Apache服务如何部署和配置

    • 重启httpd服务:systemctl restart httpd

    • 查看httpd服务的端口号:netsat -antlupe | grep httpd

    Linux下Apache服务如何部署和配置

    • 更改端口号后,输入ip后无法正常连接,原因是8080端口未添加在火墙中

    Linux下Apache服务如何部署和配置

    • 在防火墙里添加888端口号:firewall-cmd --permanent --add-port=888/tcp

    • 在不改变当前火墙状态的情况下刷新防火墙:firewall-cmd --reload

    Linux下Apache服务如何部署和配置

    • 输入IP地址:端口号,可以正常访问

    Linux下Apache服务如何部署和配置

    (2)修改apche的默认发布文件

    • 默认目录:cd /var/www/html

    • 在文件默认发布目录下新建一个文件index.html

    Linux下Apache服务如何部署和配置

    • 输入:http://172.25.254.144查看

    Linux下Apache服务如何部署和配置

    默认发布文件就是访问apache时没有指定文件名,即默认访问的文件,此文件可以指定多个,但有访问顺序。

    • 新建文件并编辑:westo.html

    Linux下Apache服务如何部署和配置

    • 编辑配置文件: /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启httpd服务:systemctl restart httpd

    Linux下Apache服务如何部署和配置

    (3)修改apche的默认发布目录

    • 新建目录:mkdir -p /westos/html/

    • 创建文件:vim /westos/html/index.html

    Linux下Apache服务如何部署和配置

    • 编辑apche配置文件: /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    • 测试:浏览器中输入http://172.25.254.144, 看到的是/westos/html/目录内的默认发布文件

    Linux下Apache服务如何部署和配置

    • 新建发布目录:mkdir /var/www/html/westos

    • 新建发布文件:vim /var/www/html/westos/index.html

    Linux下Apache服务如何部署和配置

    • 编辑配置文件:vim /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    • 测试:http://172.25.254.144/westos/

    Linux下Apache服务如何部署和配置

    5 apache的访问控制

    5.1 基于客户端ip的访问控制

    • 基于ip的访问,规定了哪些ip可以访问,那些ip不能访问,其中配置文件中order中的deny和Allow哪一个顺序在前直接决定了黑白名单的属性

    (1)白名单

    • ip白名单:只有名单内的用户可以访问

    • 编辑配置文件:vim /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    • 测试: ip=172.25.254.44在ip白名单,可以正常访问http://172.25.254.44/westos

    Linux下Apache服务如何部署和配置

    ip=172.25.254.144的主机不在白名单内,无法访问http://172.25.254.44/westos

    Linux下Apache服务如何部署和配置

    (2)ip黑名单

    • ip黑名单:只有名单内的用户不可以访问

    • 编辑配置文件:vim /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 测试:ip=172.25.254.44在ip黑名单中,可以正常访问http://172.25.254.44/westos

    Linux下Apache服务如何部署和配置

    ip=172.25.254.144不在黑名单内,可以正常访问http://172.25.254.44/westos

    Linux下Apache服务如何部署和配置

    5.2 基于用户认证的访问控制

    (1)允许部分用户通过认证访问共享目录

    • 生成认证文件,建立admin用户:htpasswd -cm /etc/httpd/htpasswdfile linux

    Linux下Apache服务如何部署和配置

    • 建立linux用户,-c会重新建立用户认证文件,覆盖之前的admin用户,入密码会覆盖之前的用户: htpasswd -m /etc/httpd/htpasswdfile westos

    Linux下Apache服务如何部署和配置

    • 只允许部分用户可以通过认证,编辑配置文件:vim /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    • 测试:只有通过认证的用户可以访问共享目录

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    (2)允许所有用户通过认证访问共享目录

    • 编辑配置文件:vim /etc/httpd/conf/httpd.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    • 测试:所有用户都可以通过认证访问共享目录

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    6 apache的虚拟主机

    虚拟主机:在一台真实主机上建立多个站点(多个域名),通过域名访问一台主机的不同网页,从网络地址看似乎有多个主机,这些主机被称为虚拟主机

    DNS解析域名的ip

    建立linux,news,media的默认发布目录: mkdir /var/www/westos.com/{linux,news,media}
    inux的默认发布文件: echo "<h2>hello linux</h2>"  >  /var/www/westos.com/news/index.html
    news的默认发布文件:echo "<h2>hello news </h2>" > /var/www/westos.com/news/index.html
    media的默认发布文件:echo "<h2>hello media </h2>" > /var/www/westos.com/media/index.html
    • 新建apche的子配置文件并编辑:/etc/httpd/conf.d/vhost.conf

    Linux下Apache服务如何部署和配置

    • 编辑本地域名解析文件:/etc/hosts

    Linux下Apache服务如何部署和配置

    • 测试实验效果:

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    7 apache的加密访问

    (1)安装加密插件

    • 查看apache的加密插件: dnf search apache

    Linux下Apache服务如何部署和配置

    • 安装加密插件

    Linux下Apache服务如何部署和配置

    (2)生成私钥: openssl genrsa -out /etc/pki/tls/private/www.westos.com.key

    Linux下Apache服务如何部署和配置

    (3)生成证书签名文件:openssl req -new -key /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/cert/www.westos.com.csr

    Linux下Apache服务如何部署和配置

    (4)生成证书:

    openssl x509 -req -days 365 -in /etc/pki/tls/certs/www.westos.com.csr -signkey  /etc/pki/tls/private/www.westos.com.key -out /etc/pki/tls/certs/www.westos.com.crt
    ##  x509:证书格式
    ##  -req请求
    ##  -in加载签证名称
    ##  -signkey

    Linux下Apache服务如何部署和配置

    • 编辑配置文件:/etc/httpd/conf.d/ssl.conf

    Linux下Apache服务如何部署和配置

    • 编辑apche的子配置文件并编辑:/etc/httpd/conf.d/vhost.conf

    Linux下Apache服务如何部署和配置

    • 重启服务:systemctl restart httpd

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    • 测试:此时就可以正常使用https加密服务

    Linux下Apache服务如何部署和配置

    8 网页重写

    在浏览器中输入media.westos.com会自动跳转到如下界面

    Linux下Apache服务如何部署和配置

    • 如果要使输入media.westos.com后跳转到https://media.westos.com,可以通过网页重写实现,也就是当访问http(80端口)时自动跳转到https(443端口)

    • 实现网页重写的步骤

    (1)apche的子配置文件并编辑:/etc/httpd/conf.d/vhost.conf

    Linux下Apache服务如何部署和配置

    (2)重启服务:systemctl restart httpd

    (3)测试,输入域名后会自动加载https

    Linux下Apache服务如何部署和配置

    9 正向代理

    (1) 配置squid客户端(该主机可以上网)

    Linux下Apache服务如何部署和配置

    • 编辑配置文件:/etc/squid/squid.conf

    Linux下Apache服务如何部署和配置

    • 启动squid服务: systemctl start squid.service

    Linux下Apache服务如何部署和配置

    (2)客户端:在不能上网的主上测试,在浏览器中输入:www.baidu.com不能访问

    Linux下Apache服务如何部署和配置

    • 加入代理:Preference——>Network settings——>Manual proxy configuration

    Linux下Apache服务如何部署和配置

    Linux下Apache服务如何部署和配置

    • 填写squid服务的主机和squid服务的端口号,设置完成后,该主机虽然没有联网但是可以通过代理访问www.baidu.com及其他网站

    Linux下Apache服务如何部署和配置

    • 在客户端测试,能正常访问www.baidu.com

    Linux下Apache服务如何部署和配置

    但是在客户端主机在仍然不能ping通www.baidu.com

    Linux下Apache服务如何部署和配置

    10 反向代理

    node1:没有apache服务的虚拟机172.25.254.244

    node2:能正常使用apache服务的虚拟机172.25.254.193,配置apache的发布文件

    Linux下Apache服务如何部署和配置

    • 下载代理: dnf install squid -y

    Linux下Apache服务如何部署和配置

    • 编辑配置文件:vim /etc/squid/squid.conf

    Linux下Apache服务如何部署和配置

    • 重启squid服务:systemctl restart squid
      原本没有apache服务的主机172.25.254.244可以通过172.25.254.193的80端口(http)缓存数据

    Linux下Apache服务如何部署和配置

    11 apache 支持的语言

    php

    Linux下Apache服务如何部署和配置

    重启apache服务:systemctl restart httpd.service

    测试:http://172.25.254.144/index.php

    Linux下Apache服务如何部署和配置

    cgi

    mkdir /var/www/html/cgi

    vim /var/www/html/cgi/index.cgi

    cd /var/www/html/cgi

    chmod +x index.cgi

    ./var/www/html/cgi/index.cgi

    Linux下Apache服务如何部署和配置

    测试:http://172.25.254.144/cgi/index.cgi

    Linux下Apache服务如何部署和配置

    编辑虚拟主机的配置文件:vim /etc/httpd/conf.d/vhost.conf

    Linux下Apache服务如何部署和配置

    重启服务:systemctl restart httpd.service

    测试:http://172.25.254.144/cgi/index.cgi

    Linux下Apache服务如何部署和配置

    以上是“Linux下Apache服务如何部署和配置”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI