• Apache 服务器的搭建和配置


    一、基本介绍

        Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一,Apache的主程序名为httpd。

    二、apache安装

    1.关闭防火墙和selinux

    [root@localhost ~]# systemctl stop firewalld && setenforce 0
    

    2、yum安装,开启,查看apache端口

    1. [root@localhost ~]# yum install -y httpd
    2. [root@localhost ~]# systemctl start httpd
    3. [root@localhost ~]# netstat -lntp | grep 80 #apache的端口为80,net-tools

      index.html :默认访问网站的主页名称

      默认发布网站的目录:/var/www/html

    3、编写测试页面,并访问

    [root@qfedu.com ~]# echo dir1 > /var/www/html/index.html

      apache 安装完成

    三、访问控制

    将http.conf文档复制并去掉httpd.conf的#

    去掉httpd.conf里面的空行

    1. [root@localhost ~]# cd /etc/httpd/conf/
    2. [root@localhost conf]# sed -i.back '/#.*/' httpd.conf
    3. [root@localhost conf]# sed -i '/^$/d' httpd.conf

    1、允许所有人访问

    1. vim /etc/httpd/conf/httpd.conf 编辑配置文件
    2. <Directory "/var/www">
    3. Options Indexes FollowSymLinks
    4. AllowOverride None
    5. Require all granted
    6. </Directory>
    7. systemctl restart httpd 重启httpd

    2、只拒绝一部分客户端访问:

    1. vim /etc/httpd/conf/httpd.conf
    2. <Directory "/var/www">
    3. Options Indexes FollowSymLinks
    4. AllowOverride None
    5. <RequireAll>
    6. Require not ip 10.36.192.24 10.36.192.25 #将不允许访问的客户端IP写在这里,以空格隔开
    7. Require all granted
    8. </RequireAll>
    9. </Directory>
    10. systemctl restart httpd #重启httpd

    3、只允许部分ip访问

    1. vim /etc/httpd/conf/httpd.conf
    2. <Directory "/var/www">
    3. Options Indexes FollowSymLinks
    4. AllowOverride None
    5. <RequireAll>
    6. Require ip 10.36.192.16
    7. </RequireAll>
    8. systemctl restart httpd

    4、拒绝所有ip访问

    1. vim /etc/httpd/conf/httpd.conf
    2. <Directory "/var/www">
    3. Options Indexes FollowSymLinks
    4. AllowOverride None
    5. <RequireALL>
    6. Require all deined
    7. </RequireAll>
    8. systemctl restart httpd

    四、修改默认网页发布目录

    1.创建网站发布目录

    [root@localhost ~]# mkdir  /web

    2.修改配置文件

    1. [root@localhost httpd]# vim /etc/httpd/conf/httpd.conf
    2. DocumentRoot "/web" # 修改网站根目录为/web
    3. <Directory "/web"> # 把这个也对应的修改为/web

    3.创建测试页面

    1. [root@localhost ~]# vim index.html
    2. 这是一个测试页面

    4.重启httpd

    [root@localhost ~]# systemctl  restart httpd

    五、虚拟主机

    虚拟主机:将多个网站放在同一台服务器上

    1 、基于端口

      (1)修改配置信息

    1. [root@localhost ~]# vim /etc/httpd/conf/httpd.conf
    2. ServerRoot "/etc/httpd"
    3. Listen 90
    4. Listen 100 #添加端口

     (2)修改次配置信息

    1. [root@localhost dir2]# vim /etc/httpd/conf.d/test.conf
    2. <VirtualHost *:90>
    3. DocumentRoot /web/dir1
    4. <Directory "/web/dir1">
    5. AllowOverride None
    6. Require all granted
    7. </Directory>
    8. </VirtualHost>
    9. <VirtualHost *:100>
    10. DocumentRoot /web/dir2
    11. <Directory "/web/dir2">
    12. AllowOverride None
    13. Require all granted
    14. </Directory>
    15. </VirtualHost>

    (3)创建目录,发布项目
     

    1. [root@localhost ~]# mkdir /web/dir1
    2. [root@localhost ~]# mkdir /web/dir2
    3. [root@localhost ~]# touch /web/dir1/index.html
    4. [root@localhost ~]# touch /web/dir2/index.html
    5. 将前端代码发布到index.html中

    (4)重启httpd并查看

    2.基于域名

    (1)修改次配置文件

    1. [root@localhost ~]# vim /etc/httpd/conf.d/test.conf
    2. <VirtualHost *:80>
    3. DocumentRoot /web/dir1
    4. ServerName www.zhangxiao.com
    5. <Directory "/web/dir1">
    6. AllowOverride None
    7. Require all granted
    8. </Directory>
    9. </VirtualHost>
    10. <VirtualHost *:80>
    11. DocumentRoot /web/dir2
    12. ServerName www.zx.com
    13. <Directory "/web/dir2">
    14. AllowOverride None
    15. Require all granted
    16. </Directory>
    17. </VirtualHost>

    (2)重启httpd

    [root@localhost~]# systemctl restart httpd

    (3)配置域名解析

    1. C:\Windows\System32\drivers\etc
    2. 10.36.192.66 www.zhangxiao.com
    3. 10.36.192.66 www.zx.com

    (4)重启并查看

    3.基于ip

    (1)添加一个新的网卡ip

    [root@localhost ~]# ip a a 10.36.192.188 dev ens33

    (2)修改配置次文件

    1. [root@localhost ~]# vim /etc/httpd/conf.d/test.conf
    2. <VirtualHost 10.36.192.66:80>
    3. DocumentRoot /web/dir1
    4. <Directory "/web/dir1">
    5. AllowOverride None
    6. Require all granted
    7. </Directory>
    8. </VirtualHost>
    9. <VirtualHost 10.36.192.188:80>
    10. DocumentRoot /web/dir2
    11. <Directory "/web/dir2">
    12. AllowOverride None
    13. Require all granted
    14. </Directory>
    15. </VirtualHost>

    (3)重启httpd

    [root@localhost ~]# systemctl restart httpd

  • 相关阅读:
    flutterdart chacha20加密
    国际阿里云、腾讯云.AWS:新加坡服务器数据中心怎么保护网络安全原创
    1024程序员节,一个ETL工程师的日常工作
    移动端开发——APP端上H5容器化建设
    服务器监控软件(二 、具体安装篇)
    0基础学习VR全景平台篇 第104篇:720全景后期软件安装
    使用 hugo oss 搭建个人博客网站
    【FastCAE源码阅读7】视图方向切换按钮实现原理
    stm32中的中断优先级
    一、PostgreSQL软件安装
  • 原文地址:https://blog.csdn.net/2301_78315274/article/details/132889953