一个典型的 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.webyang.net;
- }
修改一下。
- server {
- listen 192.168.3.3:80;#指定Nginx只占用某个IP的80端口。
- listen 192.168.10.3:80;#如果你服务器中有多个IP,还可以指定多个。
- server_name www.webyang.net;
- }
如果你在Nginx有多个虚拟主机,每一个都需要这么修改。
然后轮到 apache 的 httpd.conf
把原来的
Listen 80
改为
Listen 127.0.0.1:80
跟Nginx一样,指定apache所占用的IP及端口。
保存退出,重启apache即可生效。
如果你 apache 上也有多个虚拟主机。无需好像Nginx那样逐一修改,只要都是 80 端口既可。
如:
- NameVirtualHost*:80
- <VirtualHost*:80>
- ServerAdmin hello@abc.com
- DocumentRoot/data/web_server/admin
- ServerName www.webyang.net
- </VirtualHost>
此处参考:http://blog.csdn.net/zajin/article/details/8724113
这样你是不是以为,就已经万事大吉了?非也。
这样的apache只能通过http://127.0.0.1:80才能访问,那么他还占用80端口就没有意义了。还不如apache用8080,nginx用80算了。
所以此时如果你的服务器有多ip,除了把apache绑定在 127.0.0.1 还能绑定另外一张网卡的IP,那么问题就解决。
可是一般人都是只有一个独立ip的,所以这种方法对很多人来讲就是海市蜃楼。
修改一种思路,apache还是8080端口,修改其中的一个nginx的域名的conf文件
- location /{
- try_files $uri @apache;
- }
- location @apache{
- internal;
- proxy_pass http://127.0.0.1:8080;
- }
- location ~.*.(php|php5)?$ {
- proxy_pass http://127.0.0.1:8080;
- }
此时,该域名全部动作都走Apache了,包括静态文件。
也有很多人下面这种写法:
- upstream zend {
- server 127.0.0.1:8080;
- }
- location /{
- proxy_pass http://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;
- proxy_set_header X-Scheme $scheme;
- }
- location ~.*.(php|php5)?$ {
- proxy_pass http://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;
- proxy_set_header X-Scheme $scheme;
- }
大体类似。
之所以最近文章写得很勤,因为最近在家待业,土豪求打赏啊!!!挥泪~
相关推荐
IIS和apache共用80端口(共存) Windows server 2003服务器上安装有默认 IIS 6,IIS运行asp程序,现需要安装apache运行php程序,想让它们同时都能通过80端口访问,设置如下:
一个典型的 Nginx + Apache 应用方案可以是Nginx 占用 80 端口,过滤静态请求,然后动态请求即 Proxy 到 Apache 的 8080 端口。Proxy 反向代理的好处是访问的时候,始终就是 80 端口,来访者不会觉察到有任何的区别...
4. **使用独立的负载均衡器**:在IIS和Tomcat之前部署一个负载均衡器,如Nginx或HAProxy,它们可以将80端口的请求智能地分发到后端的IIS和Tomcat实例。 在实际操作中,需要根据应用需求和服务器环境来选择最合适的...
在探讨如何使用Nginx配置多个Tomcat应用服务器共用80端口之前,我们需要理解Web服务器和应用服务器的基本概念。Web服务器主要负责处理HTTP请求,返回静态内容,比如HTML页面、图片等,常见的Web服务器有Apache ...
今天在使用WAMP的时候发现它无法正常启动,一直卡在黄色的图标那里,我怀疑是80端口被占用了,于是在cmd里... 您可能感兴趣的文章:详解Nginx与Apache共用80端口的配置方法修改wamp的apache默认端口80为8088以及www目
3. 配置Tomcat的`context.xml`或`server.xml`文件以使用MemcachedSessionManager,并设置相关的连接参数(如Memcached服务器的地址和端口)。 4. 如果使用的是Spring框架,还需要在Spring配置文件中添加相应配置,...
2. **复制和负载均衡器**:通常使用Nginx或Apache做反向代理,实现请求的负载均衡,并且负责实例间的session复制。 3. **共享存储**:如使用NFS(网络文件系统)或分布式文件系统,实现配置文件和应用资源的共享。 ...
- **使用不同主机头名**:通过设置主机头名,多个网站可以共用一个IP地址,但需要在DNS服务器中进行配置。 5. **设置Web网站**: - **"网站"选项卡**:配置网站的基本信息,如绑定IP地址、端口和主机头名。 - **...
常见的Web服务器包括Apache、Nginx和Microsoft的IIS等。 #### 二、Windows Server 2021中的Web服务器配置 - **配置工具**:IIS (Internet Information Services) 管理器是Windows Server系统中用来配置和管理Web...
总的来说,rtorrent-rutorrent组合为用户提供了便捷的BitTorrent下载管理解决方案,而"rtorrent-rutorrent-common"则可能是整合这些工具共用配置的集合,帮助用户更轻松地部署和管理这一系统。理解并熟练掌握这些...
系统设置:基本设置、联系方式设置、水印设置、文件上传设置、站长统计设置、百度分享设置、缩略图设置、数据库设置、邮箱设置、语言设置、第三方登录设置、手机网站设置、其它设置等 系统管理:自定义标签管理、...
系统设置:基本设置、联系方式设置、水印设置、文件上传设置、站长统计设置、百度分享设置、缩略图设置、数据库设置、邮箱设置、语言设置、第三方登录设置、手机网站设置、其它设置等 系统管理:自定义标签管理、...
点击“系统管理”左侧功能菜单中的“系统设置”,右侧将会显示系统全局设置信息,包含站点名称、站点简称、站点域名、资源路径、部署路径、端口、站点风格、是否开启回收站、SEO标题、SEO关键字、SEO描述等配置项,...
内置插件,功能无限扩展系统设置:基本设置、联系方式设置、水印设置、文件上传设置、站长统计设置、百度分享设置、缩略图设置、数据库设置、邮箱设置、语言设置、第三方登录设置、手机网站设置、其它设置等系统管理...