构想:Apache负责php页面,nginx负责视频文件等静态页面
单台服务器,目前只有一个ip,那就采用不同的端口号,apache监听80端口,基本上不需要改变什么,只需要把视频文件拷贝到nginx下面的文件下,然后开启反向代理功能,反向代理就是:此模块能代理请求到其它服务器.也就是把视频文件反向代理到apache下面:
1:开启反向代理服务
反向到80端口
还可以添加下列参数:
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

⑵监听8888端口

可以参考一篇很不错的类似文章:http://liuyu.blog.51cto.com/183345/166381
***********************************************************************
Nginx反向到apache可能会出现的问题:
⑴第一获得真实ip会一直都是nginx的:
Apache端:
#vimhttpd.conf
LoadModulerpaf_modulemodules/mod_rpaf-2.0.so
#vimhttpd-vhosts.conf
在虚拟主机里加上
RPAFenableOn
RPAFproxy_ips192.168.1.100
RPAFsethostnameOn
RPAFheaderX-Forwarded-For
Nginx端已经在proxy.conf里定义了
详细解决办法参考;http://windphp.com/unix/52.html
⑵session丢失
Nginx简单轮训会导致session丢失,面对这种问题,一种可以将nginx调度算法换为ip_hash,这样负载的作用将没有意义,另一种可将session存在memcache里…..
#vim/usr/local/php/lib/php.ini
修改为
session.save_handler=memcache
session.save_path="tcp://IP:11211"
*************************************************
Hosts:liunx和win下面都有,主要功能就是把域名定向到指定ip上,并且程序里面的出现域名的地方也会指向指定ip.
Win下面:C:\WINDOWS\system32\drivers\etc\HOSTS
Liunx下面:etc/hosts
======================================================
只要保证nginx和apache两端口不冲突两服务器就可以并存
【对以上不足的补充】
一个典型的 Nginx + Apache 应用方案可以是Nginx 占用 80 端口,过滤静态请求,然后动态请求即 Proxy 到 Apache 的 8080 端口。Proxy 反向代理的好处是访问的时候,始终就是 80端口,来访者不会觉察到有任何的区别。
但有的应用确非常“聪明”,识别到 Apache 所位于的端口是 8080 ,就会把相关的超链接都一并加上 :8080 的后续。这么就死定了,还能有正常访问麽?!有个方法可以解决这事,就是把 apache 也运行在80端口上。
同一台服务器,有Nginx 也有 Apache,2个httpd服务,都是80,不会冲突麽?
下边就是举例方法。
Nginx.conf 的配置中
server {
listen 80;
server_name www.ABC.com;
root /var/www
}
修改一下。
server {
listen 公网IP123.123.123.123:80; #指定Nginx只占用某个IP的80端口。#如果你服务器中有多个IP,还可以指定多个。
server_name www.ABC.com;
}
如果你在Nginx有多个虚拟主机,每一个都需要这么修改。
-----------------------------------------------------------------------------------------------------------------
然后轮到 apache 的 httpd.conf
把原来的
Listen 80
改为
Listen 127.0.0.1:80
跟Nginx一样,指定apache所占用的IP及端口。
保存退出,重启apache即可生效。
如果你 apache 上也有多个虚拟主机。无需好像Nginx那样逐一修改,只要都是 80 端口既可。
如:
NameVirtualHost *:80
ServerAdmin hello@abc.com
DocumentRoot /var/www/admin
ServerName admin.ABC.com
(老李批注:这里用管理后台域名绑定后台目录,类似manager.***.com)
(这样,恐怕apache只能通过http://127.0.0.1:80才能访问,那么他还占用80端口就没有意义了。还不如apache用8080,nginx用80算了。没有认真看,有“聪明” 的应用检测到apache使用的是8080端口,会把应用里头所有的超链接都加上:8080结尾,为了解决该问题,所以才有这一文。而且多数服务器都具备2张网卡,除了把apache绑定在 127.0.0.1 还能绑定另外一张网卡的IP,这么问题就解决。)
这样,Nginx 跟 Apache 就仅会占用指定IP的80端口,不会冲突。
只要调整一下 Nginx proxy 的参数。
“聪明”应用问题就能解决了。
分享到:
相关推荐
### Nginx反向代理不能访问项目的解决办法 ...通过这些步骤,可以逐步定位并解决通过Nginx反向代理访问不到部署在Tomcat上项目的常见问题。在实际操作过程中,可能还需要根据具体情况调整配置或排查其他潜在问题。
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4...
Nginx反向代理Tomcat服务器的知识点主要包括以下几个方面: 1. 反向代理的概念: 反向代理是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给...
【Nginx反向代理配置详解】 在软件开发领域,Nginx因其高效、轻量级的特性,常被用作反向代理服务器,以优化Web服务性能和处理高并发请求。本文将详细介绍如何配置Nginx进行反向代理,以及在安装和配置过程中需要...
`nginx`作为一款高性能的反向代理服务器和负载均衡器,常用于处理静态资源,而`tomcat`则作为Java应用服务器,主要负责运行Java Web应用。下面我们将详细探讨`nginx1.6`的安装、`tomcat7`的安装以及它们之间的反向...
Nginx 的反向代理功能可以在 Apache 服务器前作为一个代理服务器,将客户端的请求转发到 Apache 上,从而减轻 Apache 的负担。Nginx 对静态资源的处理能力强,且支持高并发,这使得它成为解决高负载问题的理想选择。...
因为架构的需要采用多级 Nginx 反向代理,但是后端的程序获取到的客户端 IP 都是前端 Nginx 的 IP,问题的根源在于后端的 Nginx 在 HTTP Header 中取客户端 IP 时没有取对正确的值。 同样适用于前端是 Squid 或者...
需要注意的是,Nginx 反向代理可以与其他服务器软件结合使用,例如 Apache、Tomcat 等,以实现更加复杂的服务器架构。同时,Nginx 也可以作为负载均衡服务器,分配客户端的请求到多个服务器上,以提高服务器的可用性...
Nginx 反向代理是一种网络技术,它用于在客户端和服务器之间建立连接,使得客户端对后端服务器的请求被 Nginx 代理服务器接收,然后由 Nginx 分发到多个后端服务器上,从而实现负载均衡和提高网站性能。这种技术常...
### Nginx 反向代理实现多 Tomcat 负载均衡详解 #### 一、基础知识概述 在深入了解如何利用 Nginx 实现对多个 Tomcat 的负载均衡之前,我们首先来简要回顾一下几个核心概念: - **Nginx**:是一款高性能的HTTP和...
**Nginx反向代理基础** Nginx反向代理是一种网络架构模式,其中Nginx服务器作为客户端的前端,接收来自外部的HTTP/HTTPS请求,并将这些请求转发给内部服务器(如Tomcat)处理。这样做的好处包括负载均衡、缓存、...
### WebLogic 集群安装及 Nginx 反向代理与负载均衡配置详解 #### 一、WebLogic 集群安装 ##### 1.1 安装环境概述 在进行 WebLogic 集群的安装之前,需要对安装环境进行一定的规划与准备。这里主要包括硬件与软件...
### Maven项目热部署与Nginx反向代理负载均衡详解 #### Maven项目热部署 热部署,也称为热更新,是指在服务器不重启的情况下更新应用的功能。这种方式在开发过程中非常实用,可以有效减少每次修改代码后重启服务器...
配置正向代理服务器使用,Nginx只能做反向代理,Apache24可以作正向代理
【Nginx反向代理服务器】是Web服务领域中一种重要的技术,主要用于处理高并发的静态资源请求和实现负载均衡。Nginx以其高效的性能、低资源占用和丰富的功能深受IT行业的青睐。以下是对Nginx及其相关知识点的详细解释...
Nginx反向代理是一种网络服务优化技术,它允许Nginx服务器作为前端接收客户端的请求,然后将这些请求转发到后端服务器处理。在这个场景中,Nginx正在为两个不同的网站提供服务,一个是运行在Windows IIS上的,另一个...
Nginx反向代理 server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; root E:\yuehou\git\web-h5\dist; location / { try_files $uri $uri/ /index....
### Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解 #### 一、前言 Nginx是一款广泛使用的高性能HTTP和反向代理Web服务器,也是邮件代理服务器,并具有IMAP/POP3/SMTP服务。Nginx以其稳定性、丰富的...
本文实例讲述了CentOS基于nginx反向代理实现负载均衡的方法。分享给大家供大家参考,具体如下: nginx做负载均衡的优点: 1、工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名、目录结构,它的...