V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
nonozone
V2EX  ›  NGINX

如果在现有apache的环境下添加前端nginx?

  •  
  •   nonozone ·
    nonozone · 2012-10-31 15:21:12 +08:00 · 3721 次点击
    这是一个创建于 4411 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在服务器上跑的LAMP,很多网站,不知道是我的apache配置问题还是咋地,有时候apache莫名多了很多进程,导致卡死,网站偶尔有404的现象。现在想在前端设置nginx?
    在网上看了些 前端nginx后端apache的教程,不明白的是,添加nginx配置的时候只需要只一个总体配置把一些静态内容让nginx接管,还是一样要分别给每个网站都写一个配置出来?


    还有现在的apache都是默认80端口了,那nginx在接管的时候这个要如果去操作呢?
    12 条回复    1970-01-01 08:00:00 +08:00
    Livid
        1
    Livid  
    MOD
       2012-10-31 15:26:19 +08:00
    你可以让 Apache 跑在 8080 上作为 80 上的 nginx 的 upstream。
    nonozone
        2
    nonozone  
    OP
       2012-10-31 15:30:58 +08:00
    @Livid 先把那些网站的配置端口全部改成8080,然后只需要在做一个nginx的配置就可以咯?目前没有区分IP,也就是所有的网站都是指向同一个iP的。
    plprapper
        3
    plprapper  
       2012-10-31 17:09:05 +08:00
    apache 跑在那种模式下的呢?

    如果换成nginx留着apache干啥呢?
    nonozone
        4
    nonozone  
    OP
       2012-10-31 21:22:58 +08:00
    @plprapper 就是让nginx处理静态,php让apache去跑,主要是现在已经在apache下面了。
    liyandong
        5
    liyandong  
       2012-11-01 03:29:27 +08:00
    参考一楼,先给战斗机80端口,在81端口调试Nginx反代给战斗机,然后调试OK了,俩人监听的端口调换一下,分别重启……好吧,以上想法纯属个人YY,反供参考
    nonozone
        6
    nonozone  
    OP
       2012-11-01 09:15:52 +08:00
    @liyandong 现在的问题是网站太多,不是一两个,首先要把所有的网站的apache配置里面的端口换一个,然后需要写一个nginx的配置,还是需要再给每个网站写个nginx配置? cc @Livid
    liyandong
        7
    liyandong  
       2012-11-01 16:53:28 +08:00
    @nonozone 貌似只要变更监听的端口就行了吧?应该是这样的,没实际做过,LZ可以本地试下
    clowwindy
        8
    clowwindy  
       2012-11-01 17:11:02 +08:00
    想起 nginx 作者说,nginx 的设计目标之一就是解决 apache 的配置文件网站多了无法维护,牵一发而动全身的问题。
    sparanoid
        9
    sparanoid  
    MOD
       2012-11-01 20:02:47 +08:00
    https://github.com/perusio/wordpress-nginx

    里面有 httpd upstream+nginx 的例子
    thbourlove
        10
    thbourlove  
       2012-11-02 08:51:26 +08:00
    @nonozone 写一个NGINX配置应该就可以了。静态文件直接由NGINX负责,其他根据不同的location, proxy_pass到本地不同的端口,然后APACHE那边改成相应的端口?这样你看行吗?
    BOYPT
        11
    BOYPT  
       2012-11-02 09:14:29 +08:00
    这个情况下楼主的nginx意义不是很大,做缓冲不是nginx的强项。建议用vanish。

    跑Apache的资源是比较铺张的,配置不高的话最好还是别让他老人家出场了。
    rekey
        12
    rekey  
       2012-11-03 03:02:33 +08:00
    试试nginx处理静态资源,php用fastcgi跑?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4709 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 10:02 · PVG 18:02 · LAX 02:02 · JFK 05:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.