当前位置:  开发笔记 > 编程语言 > 正文

如何将不同的子域请求重定向到不同的端口

如何解决《如何将不同的子域请求重定向到不同的端口》经验,为你挑选了2个好方法。

我有两个应用程序,一个是www.myexample.com,另一个是blog.myexample.com.我正在使用PHP和Apache.

现在,我想www.myexample.com在我的机器的端口82和blog.myexample.com同一台机器上的端口83上运行.如何配置apache和/或PHP脚本,以便在正确提供请求请求时?

编辑:感谢所有回复的人,但我担心我不明白这个问题 - 我的坏!

我真正想要的是模拟www.myexample.com和blog.myexample.com位于不同机器上的条件.因此,当请求进入时,网关服务器(也是托管www.myexample.com的服务器)将检查这是对www.myexample.com或blog.myexample.com的请求,并进行必要的重新路由.

这该怎么做?谢谢.



1> vladr..:

我将假设您有自己的理由希望这两个站点(wwwblog)在不同的端口上运行 - 并且在不同的进程中.如果这不是您想要的,例如您不希望有两个不同的进程,那么拥有不同的端口可能不是您想要的:使用VirtualHost相反,共同托管端口上相同的apache + php实例中的两个域80. 否则,请继续阅读.

假设您的两个apache + php进程分别在localhost:82和localhost:83上进行侦听,请启动第三个仅限apache的进程作为反向代理.让反向代理apache实例侦听来自Internet的端口80上的请求,具有两个虚拟主机定义.第一个虚拟主机定义www将转发请求到localhost:82,而第二个虚拟主机定义blog将转发请求到locahost:83,例如:

NameVirtualHost *:80

# www

  ServerName www.myexample.com
  ProxyPass               /       http://localhost:82/
  ProxyPassReverse        /       http://localhost:82/


# blog

  ServerName blog.myexample.com
  ProxyPass               /       http://localhost:83/
  ProxyPassReverse        /       http://localhost:83/



2> Glavić..:

我使用代理来处理这类事情.

在我的例子中,我在端口80上运行了apache 1.3,但我需要svn存储库在apache 2.2上运行,而且我不想每次都在域的末尾键入:82.所以我在apache 1.3(端口80)上进行了代理重定向:


  ServerName svn.mydomain.com
  ServerAlias svn
  ServerAdmin my@email.com

  
    ProxyPass / http://svn:82/
  

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有