nginx 反向代理Apache

本文涉及的产品
.cn 域名,1个 12个月
简介: 2014年1月13日 18:15:25 同一个域名下,不同uri走不同的应用(不同的web根目录) 实现方式: Apache分别监听两个端口,对应不同的应用 nginx监听80端口,利用location指令根据匹配目录的不同将请求转发到不同的端口 nginx和Apache都在同一台wind...

2014年1月13日 18:15:25

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

实现方式:

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

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

nginx和Apache都在同一台windows上

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

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

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

nginx.conf

 1 #user  nobody;
 2 worker_processes  1;
 3 
 4 error_log  F:/vc9server/nginx/logs/error.log;
 5 error_log  F:/vc9server/nginx/logs/error.log  notice;
 6 error_log  F:/vc9server/nginx/logs/error.log  info;
 7 
 8 pid        F:/vc9server/nginx/logs/nginx.pid;
 9 
10 events {
11     worker_connections  1024;
12 }
13 
14 http {
15     include       mime.types;
16     default_type  application/octet-stream;
17 
18     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
19                      '$status $body_bytes_sent "$http_referer" '
20                      '"$http_user_agent" "$http_x_forwarded_for"';
21 
22     access_log  F:/vc9server/nginx/logs/access.log  main;
23 
24     sendfile        on; #跟内核交互用 缓存
25     #tcp_nopush     on;
26 
27     #keepalive_timeout  0;
28     keepalive_timeout  65;
29     
30     server_names_hash_bucket_size 64;
31     include        apache.conf; #主要的反向代理配置都写在这个文件里了
32 }

apache.conf

 1 ##2014年1月11日
 2 #反向代理
 3 upstream zend 
 4 {
 5     server 127.0.0.1:8089;
 6 }
 7 
 8 upstream yaf 
 9 {
10     server 127.0.0.1:8088;
11 }
12 
13 server 
14 {
15     listen       80;
16     server_name  www.example1.com;
17     
18     location ^~ /abc {
19         proxy_pass      http://zend; #转发到上边定义的zend代理中去
20 
21         proxy_redirect          off;
22         proxy_set_header        Host $host;
23         proxy_set_header        X-Real-IP $remote_addr;
24         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
25     }
26     
27     location / 
28     {
29         proxy_pass      http://yaf; #转发到上边定义的yaf代理中去
30 
31         proxy_redirect          off;
32         proxy_set_header        Host $host;
33         proxy_set_header        X-Real-IP $remote_addr;
34         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
35         proxy_set_header         X-Scheme $scheme;
36     }
37 }    
38 server 
39 {
40     listen       80;
41     server_name  www.example2.com;
42         
43     location / 
44     {
45         proxy_pass      http://zend; #转发到zend代理
46 
47         proxy_redirect          off;
48         proxy_set_header        Host $host;
49         proxy_set_header        X-Real-IP $remote_addr;
50         proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
51     }
52 }

解释:

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重启后浏览器里访问试试

 

 

目录
相关文章
|
8天前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
nginx配置反向代理404问题
|
28天前
|
负载均衡 应用服务中间件 Linux
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
这篇博客文章详细介绍了Nginx的下载、安装、配置以及使用,包括正向代理、反向代理、负载均衡、动静分离等高级功能,并通过具体实例讲解了如何进行配置。
132 4
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
|
27天前
|
缓存 前端开发 应用服务中间件
CORS跨域+Nginx配置、Apache配置
CORS跨域+Nginx配置、Apache配置
106 7
|
1月前
|
应用服务中间件 nginx
nginx反向代理与证书设置
nginx反向代理与证书设置
38 3
|
1月前
|
负载均衡 算法 应用服务中间件
nginx反向代理与负载均衡
nginx反向代理与负载均衡
32 1
|
2月前
|
JavaScript Java 应用服务中间件
|
1月前
|
JavaScript 应用服务中间件 开发工具
vue尚品汇商城项目-day07【53.nginx反向代理配置】
vue尚品汇商城项目-day07【53.nginx反向代理配置】
31 4
|
3月前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
|
3月前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何配置Web服务器(如Apache或Nginx)?
在Linux中,如何配置Web服务器(如Apache或Nginx)?
|
3月前
|
缓存 负载均衡 应用服务中间件
Nginx 代理管理器强势登场!轻松设置反向代理,为你的网络安全与高效护航,快来探索!
【8月更文挑战第23天】Nginx 代理管理器(NPM)是一款强大的工具,用于简化反向代理的设置流程。反向代理能隐藏后端服务器的真实IP,提升安全性,实现负载均衡与缓存等功能。用户需先安装Nginx 代理管理器,然后通过其Web界面添加代理主机,指定代理名称、协议类型、服务器地址及端口等信息。对于HTTPS协议,还需上传SSL证书/密钥。完成设置后,可通过浏览器测试反向代理是否正常工作。Nginx 代理管理器还支持高级特性,如负载均衡、缓存及访问控制等。
99 1