• CentOS 7运维管理笔记(7)----Apache 基于端口的虚拟主机配置


      如果一台服务器只有一个IP或需要通过不同的端口访问不同的虚拟主机,可以使用基于端口的虚拟主机配置。

    (1) 在虚拟机的CentOS7服务器上配置 eth0:4 为192.168.1.214:

    (2) 配置 /etc/hosts文件以方便测试:

     进行ping测试,看ip地址有没有导通:

    (3) 建立虚拟主机存放网页的根目录,并建立首页文件 index.html

    (4) 修改 /usr/local/apache2/conf/httpd.conf 文件,在文件末尾添加以下内容:

    Listen 192.168.1.214:8080
    Listen 192.168.1.214:8081
    Listen 192.168.1.214:8082

    (5) 编辑每个IP端口的配置文件

    在 /usr/local/apache2/conf/vhost/ 目录下新建 porttest.8080.conf ,porttest.8081.conf ,porttest.8082.conf 文件,以 porttest.8080.conf 文件为例:

    <VirtualHost 192.168.1.214:8080>
            ServerName porttest
            DocumentRoot  /usr/local/apache2/www/porttest/8080
            <Directory "/usr/local/apache2/www/porttest/8080/">
                    Options Indexes FollowSymLinks
                    AllowOverride None
                    Require all granted
            </Directory>
    </VirtualHost>

    (6) 测试配置文件,并重启Apache服务器

    (i) 使用 apachectl -t 命令测试配置文件是否正确,使用 apachectl restart 命令重启Apache服务器:

    (ii)使用curl命令测试虚拟主机的开启情况:

    显示无法连接。这时才想起来防火墙没有开启 8080,8081,8082这几个端口,开启之:

    vim /etc/sysconfig/iptables

    重启iptables:

     然后再用 curl 命令连接 porttest:8080,结果得到如下一系列错误:

    百思不得其解为何 192.168.1.214的8080,8081,8082端口没有打开,反而是192.168.1.213的这三个端口打开了。重新检查上面所有的步骤,终于发现原来在第四步,将错将 Listen 192.168.1.214:8080 写成了 192.168.1.213:8080:

    呵呵,大意了……改正之:

    (iii) 测试Apache的配置是否正确,如果正确,重启Apache服务:

    用curl 命令测试:

    Windows主机的浏览器测试:

    成功!

  • 相关阅读:
    Dubbo (开源分布式服务框架)
    Springboot+Jpa的使用
    springboot(十二):springboot如何测试打包部署
    Java NIO:IO与NIO的区别
    eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled
    spring boot
    【微服务架构】SpringCloud组件和概念介绍
    java正则表达式
    java的反射机制原理
    nginx代理服务器
  • 原文地址:https://www.cnblogs.com/dongling/p/5635801.html
Copyright © 2020-2023  润新知