V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
pysama
V2EX  ›  问与答

如何在 apache 服务器上部署 nodejs 应用?

  •  
  •   pysama · Dec 6, 2016 · 7460 views
    This topic created in 3441 days ago, the information mentioned may be changed or developed.

    服务器是 apache 的,但我的应用是 nodejs 的。 apache 用了 80 端口, nodejs 只能用其他其他端口 我想到的方案是利用反向代理或者 url rewrite 来实现。

    我根据我查询的资料,反向代理貌似只能将某个目录下的请求转发到另一个域名的资源,比如: www.A.com/f 代理到 www.A.com/Fantasy 。 由于我的应用是通过二级域名访问( app.A.com )。所以貌似没法使用反向代理。(当然也可能是我理解的不深入,或者资料不对)

    我想到了有个叫 rewrite 的东西。大概就是通过正则将访问者的请求转发到另外的地址,并保持 url 不变。 比如通过一个正则,将 app.A.com 域名下的请求都转发到 localhost:3000

    疑问:

    • 我的这种需求,可以通过反向代理实现吗?
    • 如果反向代理不能实现,那能用 rewrite 实现吗?

    请各位大神指点下,给个方向,我再去研究。谢谢

    认真回复我的都走桃花运~~~2333

    4 replies    2016-12-07 09:54:47 +08:00
    pysama
        1
    pysama  
    OP
       Dec 6, 2016
    我错了
    反向代理也可以将二级域名整理代理到其他地址的。但问题来了,主域名也被代理了。
    我只想将 app.A.com 代理到 localhost:3000 ,但是 A.com 也被代理到了 localhost : 300 。

    我的配置如下:

    ```
    <VirtualHost *:80>
    ServerName child.A.com
    ServerAlias child.A.com
    ProxyRequests off

    <Proxy *>
    Order deny,allow
    Allow from all
    </Proxy>
    <Location />
    ProxyPass http://localhost:3000/
    ProxyPassReverse http://localhost:3000/
    </Location>
    </VirtualHost>
    ```
    yangg
        2
    yangg  
       Dec 7, 2016 via iPhone
    location 这个标签去掉,只要里面的?
    yangg
        3
    yangg  
       Dec 7, 2016 via iPhone   ❤️ 1
    另外 node 建议用 pm2 之类的工具
    jianzhiyao020
        4
    jianzhiyao020  
       Dec 7, 2016   ❤️ 1
    httpd.conf 里面添加这个试试
    <VirtualHost *:80>
    ServerName app.A.com
    ServerAlias app.A.com *.app.A.com
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
    ErrorLog logs/app.A.com-error_log
    CustomLog logs/app.A.com-access_log common
    </VirtualHost>
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2883 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 02:31 · PVG 10:31 · LAX 19:31 · JFK 22:31
    ♥ Do have faith in what you're doing.