环境:                                                      ↗  atl.example.com  (192.168.1.101)

↗ www.example.com  (192.168.1.101)

↗system1.example.com (192.168.1.101)

centos7  (192.168.1.109) dns 服务器      →system2.example.com(192.168.1.105)

↘classroom.example.com(192.168.1.109)

Apache为server端 ->   rhel7  server ->(192.168.1.101)(system1.example.com)已设置192.168.1.109为dns解析

其他主机为客户端  ->  rhel7   clinet  ->(192.168.1.105)(system2.example.com)已设置192.168.1.109为dns解析

1.安装Apache

yum install -y  httpd

2.配置防火墙80/tcp对全网开放:firewall-cmd --permanent --add-port=80/tcp && firewall-cmd --reload

或者针对某个ip域开放:firewall-cmd --permanent --add-rich-rule 'rule family=ipv4 source address=192.168.1.0/24 service name=http  accept'

3.设置开机自启与重新启动:

systemctl  enable httpd && systemctl restart httpd

4.设置system1.example.com站点

echo 'system1.example.com' > /var/www/html/index.html

执行systemctl restart httpd   然后再浏览器输入 http://system1.example.com

5.配置虚拟主机www.example.com站点

mkdir /var/www/virtual

cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf /etc/httpd/conf.d/

vim /etc/httpd/conf.d/httpd-vhosts.conf

<VirtualHost *:80>

DocumentRoot "/var/www/virtual"
ServerName www.example.com
</VirtualHost>

:x    保存退出

执行systemctl restart httpd   然后再浏览器输入http://www.example.com

6.www.example.com网站目录访问 域 和 用户 控制       注意!红色字体为 域 控制语句

域访问控制

<VirtualHost *:80>

DocumentRoot "/var/www/virtual"

ServerName www.example.com
<Directory /var/www/virtual/dwc>
<RequireAll>
Require all granted   #允许所有主机访问
Require local            #只允许本地主机访问
</RequireAll>
</Directory>
</VirtualHost>  #
所以这个配置只允许本地主机访问dwc

<VirtualHost *:80>
DocumentRoot "/var/www/virtual"
ServerName www.example.com
<Directory /var/www/virtual/dwc>
<RequireAll>
Require all granted              #允许所有主机访问
Require  ip 172.25.0.0/24       #允许172.25.0.0/24这个主机访问   <<--填 网段 或者 ip
</RequireAll>
</Directory>
</VirtualHost>  #所以这个配置只允许172.25.0.0/24这个域的主机访问dwc

<VirtualHost *:80>
DocumentRoot "/var/www/virtual"
ServerName www.example.com
<Directory /var/www/virtual/dwc>
<RequireAll>
Require all granted              #允许所有主机访问
Require   not ip 172.25.0.0/24       #拒绝172.25.0.0/24这个域的主机访问      <<--填 网段 或者 i
</RequireAll>
</Directory>
</VirtualHost>  #所以这个配置只拒绝172.25.0.0/24这个域的主机访问dwc

用户的访问控制

首先建立Apache用户口令文件:htpasswd -c /etc/httpd/passwd user1

<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName system1.example.com
<Directory /var/www/html/test>
AuthType Basic
AuthName "***welcome! to ^_^ web-login!***"   #web界面欢迎条文
AuthUserFile /etc/httpd/passwd                           #用户口令文件存放路径                     
Require valid-user
</Directory>
</VirtualHost> #此设置只允user1这个用户访问test页面

基于ssl(https)的虚拟主机设置

首先 yum install  -y mod_ssl

然后把crt和key文件放到对应目录

<VirtualHost *:443>  #!注意侦听443端口
DocumentRoot "/var/www/html"
ServerName system1.example.com
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/system1.crt
SSLCertificateKeyFile /etc/pki/tls/private/system1.key
SSLCertificateChainFile /etc/pki/tls/certs/group1.crt
</VirtualHost>

动态网站非标准端口站点http://alt.example.com:8999

首先安装动态网站插件 yum install -y mod_wsgi

listen 8909  注意侦听8999端口

<VirtualHost *:8909>注意侦听8999端口
WSGIScriptAlias / /var/www/wsgi/webapp.wsgi   #wsgi脚本文件目录
ServerName alt.example.com
</VirtualHost>

然后防火墙打开8999端口:

firewall-cmd --permanent --add-port=8999/tcp也可以富规则

selinux也放行8999端口:

semanage port -a -t http_port_t -p tcp 8999

最后重启服务 systemctl restart httpd

浏览器访问 http://alt.example.com:8999

wsgi+https网站https://alt.example.com

<VirtualHost *:443>
WSGIScriptAlias / /var/www/wsgi/webapp.wsgi    <----wsgi配置
ServerName alt.example.com
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/system1.crt
SSLCertificateKeyFile /etc/pki/tls/private/system1.key   <---https配置
SSLCertificateChainFile /etc/pki/tls/certs/group1.crt
</VirtualHost>

14.Apache配置的更多相关文章

  1. Windows上为Apache配置HTTPS

    Windows上为Apache配置HTTPS   转 https://www.cnblogs.com/tianzijiaozi/p/7582671.html   1. 安装OpenSSL: Windo ...

  2. Apache配置tomcat集群

     APACHE 2.2.9+TOMCAT6.0配置负载均衡 目标: 使用 apache 和 tomcat 配置一个可以应用的 web 网站,要达到以下要求: 1. Apache 做为 HttpSe ...

  3. [Linux]Apache配置虚拟主机

    Apache 配置虚拟主机的方式很多,种类也很多,主要分为两类:   基于名称的虚拟主机 (每个 IP 多个站点) 基于 IP 的虚拟主机 (每个 IP 一个站点) 基于名称的虚拟主机:  www.2 ...

  4. Apache——配置与应用

    Apache配置与应用 1.概述 2.httpd服务支持的虚拟主机类型 3.构建虚拟Web主机 4.构建Web虚拟目录与用户授权限制 5.日志分割 6.AWStats分析系统 1.概述: 虚拟web主 ...

  5. apache配置 php中没有php5apache2_4.dll

    apache配置 php中没有php5apache2_4.dll 今天,在win7系统下安装Apache+PHP+MySQL时,终于体会到了版本多也不一定是好事,各种不兼容,主要是因为动态包的多少问题 ...

  6. Apache 配置多站点访问「为项目分配二级域名」

    一级域名(baidu.com)也叫作顶级域名,注册一级域名是需要付费的. 而二级域名(image.baidu.com)是一级域名的延伸,所以只要购买了一级域名,二级域名是可以任意配置的. 其实(www ...

  7. 【转】Apache 配置虚拟主机三种方式

    Apache 配置虚拟主机三种方式  原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假 ...

  8. Tomcat:利用Apache配置反向代理、负载均衡

    本篇主要介绍apache配置反向代理,介绍了两种情况:第一种是,只使用apache配置反向代理:第二种是,apache与应用服务器(tomcat)结合,配置反向代理,同时了配置了负载均衡. 准备工作 ...

  9. Apache 配置多端口

    Apache 配置多端口,主要是以下步骤 1. 如果电脑是64位的,官网上下载WampServe,装的过程中如果出现msvcp110.dll丢失的话,解决办法如下: 1.1 首先是打开浏览器,在浏览器 ...

随机推荐

  1. IIS 发布网站遇到的问题

    1.解决win7 64位[ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 http://wwwu8.wap.blog.163.com/w2/blogDetail.do?hostID ...

  2. 构建高性能服务(三)Java高性能缓冲设计 vs Disruptor vs LinkedBlockingQueue--转载

    原文地址:http://maoyidao.iteye.com/blog/1663193 一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据.而 ...

  3. Thrift安装问题

      1.error: Bison version 2.5 or higher must be installed on the system! 哈哈,Bison版本低了吧,用下面的命令 wget ht ...

  4. Cyclic Nacklace

    Problem Description CC always becomes very depressed at the end of this month, he has checked his cr ...

  5. 1.4.6 其他Schema元素

    这里描述了schema.xml中的其他几个重要的元素. 唯一主键-Unique Key uniqueKey元素一篇文档的唯一标记,它几乎总是保证您的应用程序设计,例如,如果你更新索引中的文档,需要用到 ...

  6. jQery简单Tab选项卡效果

    简单的Tab效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  7. 如何利用OCS存取PHP session全局变量

    如何利用OCS存取PHP session全局变量 阿里云技术团队:余汶龙   一.场景介绍 用户在利用PHP搭建网站时,会把一些信息存放在$_SESSION全局变量里,可以很方便的存取.在PHP的in ...

  8. uva 10474 Where is the Marble? 计数排序

    题目给出一系列数字,然后问哪个数字是从小到大排在第几的,重复出现算第一个. 数据范围为10000,不大,完全可以暴力,sort不会超时. 但是由于以前做比赛时也遇到这种题目,没注意看数据范围,然后暴力 ...

  9. jquery plugins —— Chosen

    官网地址:http://harvesthq.github.io/chosen/ Chosen (v1.4.2) Chosen has a number of options and attribute ...

  10. bash 中的case语法

    CASE语法格式备忘 case $variable-name in pattern1) command1 ... .... commandN ;; pattern2|pattern3|pattern4 ...