2014年1月13日 18:15:25

同一个域名下,不同uri走不同的应用(不同的web根目录)

实现方式:

Apache分别监听两个端口,对应不同的应用

nginx监听80端口,利用location指令根据匹配目录的不同将请求转发到不同的端口

nginx和Apache都在同一台windows上

nginx下载windows版本,解压->简单配置下->保证能启动nginx

命令行启动时要注意:要进入到解压文件内去执行nginx.exe不能简单的写到环境变量了事

下边是我的主配置文件(这些配置足够启动nginx了):

nginx.conf

 #user  nobody;
worker_processes ; error_log F:/vc9server/nginx/logs/error.log;
error_log F:/vc9server/nginx/logs/error.log notice;
error_log F:/vc9server/nginx/logs/error.log info; pid F:/vc9server/nginx/logs/nginx.pid; events {
worker_connections ;
} http {
include mime.types;
default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; access_log F:/vc9server/nginx/logs/access.log main; sendfile on; #跟内核交互用 缓存
#tcp_nopush on; #keepalive_timeout ;
keepalive_timeout ; server_names_hash_bucket_size ;
include apache.conf; #主要的反向代理配置都写在这个文件里了
}

apache.conf

 ##2014年1月11日
#反向代理
upstream zend
{
server 127.0.0.1:;
} upstream yaf
{
server 127.0.0.1:;
} server
{
listen ;
server_name www.example1.com; location ^~ /abc {
proxy_pass http://zend; #转发到上边定义的zend代理中去 proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
} location /
{
proxy_pass http://yaf; #转发到上边定义的yaf代理中去 proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Scheme $scheme;
}
}
server
{
listen ;
server_name www.example2.com; location /
{
proxy_pass http://zend; #转发到zend代理 proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

解释:

1.请求 example1 时

URI为/abc开头的转发到上边定义的zend代理,其余的URI请求转到yaf代理

2.请求 example2 时

将所有请求转发到zend代理

3.配置中的proxy_set_header 是将nginx得到的请求信息(头信息等等)复制一份给代理服务器

4.nginx指令要有分号结尾,监听多个域名时,域名间用空格隔开后再以分号结尾

最后

在Apache中监听apache.conf中zend,yaf两个代理指定的域名+端口 或 ip+端口,并作相应的配置

nginx 和 Apache重启后浏览器里访问试试

nginx 反向代理Apache的更多相关文章

  1. nginx 反向代理 apache 服务

    反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时 ...

  2. 关于修改banner信息;nginx反向代理apache应用

    本周实验 1. Linux下Apache部署一个php页面,返回http数据包中查看server信息,修改Apache 配置使server banner自定义. 2. nginx设置反向代理,代理上面 ...

  3. 腾讯云Centos下Nginx反向代理Apache+Tomcat

    1. 安装Apahce, PHP, MySQL以及php连接mysql库的组件#yum -y install httpd php mysql mysql-server php-mysql     // ...

  4. nginx 反向代理apache服务器 配置java与PHP共存环境

    listen 80; listen 443; ssl on; ssl_certificate /passport.crt; ssl_certificate_key /passport.key; ssl ...

  5. nginx 反向代理 与 Apache backend的配置联合配置

    nginx 反向代理 与 Apache backend的配置联合配置: 说明: nginx 将http映射到Apache上的特定子目录. 配置方法步骤: 1.  设置域名, 子域名映射到指定服务器ip ...

  6. 15 nginx反向代理实现nginx+apache动静分离

    一:nginx反向代理实现nginx+apache动静分离-------------概念--------------------------- nginx反向代理服务器+负载均衡 用nginx做反向代 ...

  7. 配置LANMP环境(7)-- 配置nginx反向代理,与配置apache虚拟主机

    一.配置nginx反向代理 1.修改配置文件 vim /etc/nginx/nginx.conf 在35行http下添加一下内容: include /data/nginx/vhosts/*.conf; ...

  8. Nginx反向代理部署指南

    一.反向代理 我们都知道,80端口是web服务的默认端口,其他主机访问web服务器也是默认和80端口进行web交互,而一台服务器也只有一个80端口,这是约定俗成的标准. 我们来看下面两个场景: 1.服 ...

  9. Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解

    转载:http://freeloda.blog.51cto.com/2033581/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负 ...

随机推荐

  1. ElasticSearch 2 (31) - 信息聚合系列之时间处理

    ElasticSearch 2 (31) - 信息聚合系列之时间处理 摘要 如果说搜索是 Elasticsearch 里最受欢迎的功能,那么按时间创建直方图一定排在第二位.为什么需要使用时间直方图? ...

  2. final 发布 领跑衫获奖感想

    时间 :2016年5月20日 13:30--14:00 final发布中,我们团队严一格演示了最终版本的四则运算项目, 修正了beta版本发布时弹幕部分无法消除的bug,总体效果达到预期. 遗憾的是没 ...

  3. POJ 2584 T-Shirt Gumbo

    T-Shirt Gumbo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3689   Accepted: 1755 Des ...

  4. NOIP2018 No regrets youth

    NOIP2018在即,20181009总结一些易错的知识点和解题方法 ——by ljc20020730 HGOI NOIP2018 No regrets youth ! NOIP2018 No reg ...

  5. Github Desktop 克隆仓库一直出现“Authentication failed”

    如图所示: 解决方法: 使用ssh链接下载而不是https

  6. zabbix使用percona插件监控mysql

    1.添加percona仓库. # yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percon ...

  7. 解题:CF1063F String Journey

    题面 分析性质以进行DP 性质1:一定有一个最优解通过每次删除第一个或最后一个字符达到 这个脑补一下就能证明了 那么我们设$dp[i]$表示后缀$[i,n]$选出一个前缀所能达到的最大长度,从右往左D ...

  8. DCT变换、DCT反变换、分块DCT变换

    一.引言 DCT变换的全称是离散余弦变换(Discrete Cosine Transform),主要用于将数据或图像的压缩,能够将空域的信号转换到频域上,具有良好的去相关性的性能.DCT变换本身是无损 ...

  9. C++外观模式和组合模式

    外观模式应该是用的很多的一种模式,特别是当一个系统很复杂时,系统提供给客户的是一个简单的对外接口,而把里面复杂的结构都封装了起来.客户只需使用这些简单接口就能使用这个系统,而不需要关注内部复杂的结构. ...

  10. 带你吃透RTMP

    RTMP协议是Real Time Message Protocol(实时信息传输协议)的缩写,它是由Adobe公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing) ...