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

Nginx 的优点到底有多少以至于有些程序都不支持 Apache 了

  •  
  •   nciyuan · 2017-10-23 18:22:06 +08:00 · 9003 次点击
    这是一个创建于 2348 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我是个 Lamp 的用户,这是前提啊 23333 表示就是说有些大型的 PHP 程序,比如 KPPW ( www.kppw.cn ),ECJia ( www.ecjia.com ) 以前都是捣鼓 Discuz 啊,WordPress 这种大众化的程序,可是一上这种的大型程序 Apache 或者说 PHP 就趴窝了,不能正常运行了 环境是 LAMP+Debian,APT 源直接安装的,当时还是觉得 Apache 有 rewrite 之类的功能 虽说 Nginx 当然可以实现,可是对于我这种“普通中级玩家”来说 Apache 还是挺简单的 结果这些程序就挂了。 这些程序的网站上大部分都推荐用 CentOS+LNMP 所以我想问 Apache 为何无法运行呢?或者说有什么 Nginx 的必备功能做不到呢?

    38 条回复    2018-12-14 01:34:14 +08:00
    likuku
        1
    likuku  
       2017-10-23 18:38:14 +08:00
    天下武功唯快不破
    sagaxu
        2
    sagaxu  
       2017-10-23 18:45:44 +08:00   ❤️ 21
    上一次用 apache 的时候,上海内环房价才几千一平
    vus520
        3
    vus520  
       2017-10-23 18:50:37 +08:00   ❤️ 2
    什么?现在都用 Caddy 了
    AlwaysBehave
        4
    AlwaysBehave  
       2017-10-23 18:51:06 +08:00
    用 LEMP 吧,通吃(噗
    还有,给点用 Apache 可以但是 Nginx 就挂了的例子啊,多半是 fpm 没配好?(雾)
    Link:
    https://lemp.io/
    shiny
        5
    shiny  
       2017-10-23 18:57:06 +08:00
    是没配置好吧,我还没遇到过 nginx 能用 Apache 不能用的,除非用到了特殊的函数才可能导致 Web 服务器之间的不兼容,比如 fastcgi_finish_request / apache_request_headers
    nciyuan
        6
    nciyuan  
    OP
       2017-10-23 19:05:28 +08:00
    @sagaxu 23333 现在翻了 20 倍
    @AlwaysBehave 需要 fan wall 吗,我这打不开
    @shiny 我的配置都是写好一份直接复制粘贴的,我看应该挺全的呢
    sunmonster
        7
    sunmonster  
       2017-10-23 19:08:09 +08:00
    php 又不是直接通过 nginx 或 apache 来运行的,所以跟 nginx 或 apache 没有半毛钱关系,应该是 apache 的配置问题
    AlwaysBehave
        8
    AlwaysBehave  
       2017-10-23 19:11:18 +08:00
    @nciyuan 不需要的样子
    其实就是 Nginx+Apache+Mysql+php
    sunmonster
        9
    sunmonster  
       2017-10-23 19:15:24 +08:00
    动态网站 apche 跟 nginx 真的差别不大,现在 apache 也支持 event MPM,很多说 apache 落后的都是停留在 5,6 年前,也没用过,人云亦云。但是我用 nginx,并不是 nginx 快,而是 nginx 比较轻量,而且配置简单可读行高
    momocraft
        10
    momocraft  
       2017-10-23 19:16:02 +08:00
    多写一份文档就多一份成本
    sagaxu
        11
    sagaxu  
       2017-10-23 19:57:38 +08:00
    @sunmonster 时至今日,apache 份额仍比 nginx 高
    wwek
        12
    wwek  
       2017-10-23 20:05:35 +08:00
    搭配跑 PHP 来说 apache 并不比 nginx 慢, 为什么用 nginx 那是因为功能强悍,性能强悍,生态丰富呀
    murmur
        13
    murmur  
       2017-10-23 20:06:04 +08:00
    很多人只是拿 nginx 当负载均衡或者跑静态资源吧
    wdlth
        14
    wdlth  
       2017-10-23 20:39:06 +08:00
    没遇到你说的不能用 Apache 的程序,Apache 的配置方法有多种,如果是 Rewrite 规则有区别的话,可以转换一下。
    carlclone
        15
    carlclone  
       2017-10-23 20:41:20 +08:00
    你连 PHP 和 Apache,Nginx 的关系都没搞清楚吧
    boboliu
        16
    boboliu  
       2017-10-23 21:03:24 +08:00 via Android
    将真,nginx 配置写起来舒服
    nciyuan
        17
    nciyuan  
    OP
       2017-10-23 22:43:56 +08:00 via Android
    表示能有大神讲一下为啥都是 PHP 就运行不起来啊


    @carlclone 明白啊,只是为啥很多人都着魔似的推荐 Nginx
    @sunmonster 可是我就把能跑 wordpress 的 vhost 改下 SSL 和网站目录就装上了
    defunct9
        18
    defunct9  
       2017-10-23 23:08:04 +08:00 via iPhone
    你配错了而已
    hard2reg
        19
    hard2reg  
       2017-10-24 04:44:21 +08:00
    @vus520 caddy 不是收费吗
    EmmaSwan
        20
    EmmaSwan  
       2017-10-24 05:50:16 +08:00
    只用 apache 和 caddy
    N 基本不碰
    NoAnyLove
        21
    NoAnyLove  
       2017-10-24 07:33:45 +08:00
    以前在 VPS 上架自己的博客,因为内存小,所以用的 Nginx。还没有用过 Caddy 呢,怎么样?
    kn007
        22
    kn007  
       2017-10-24 07:41:05 +08:00
    同 2 楼,用 Apache 都是多年的事了。。。Nginx 用了好久,以至于 Apache 的配置都不会写了
    gstqc
        23
    gstqc  
       2017-10-24 08:33:49 +08:00 via iPhone
    可以把 nginx.conf 当一门语言来写,nginx 的很多变量都是可以修改的,玩起来很爽
    mosliu
        24
    mosliu  
       2017-10-24 09:05:49 +08:00
    感觉 caddy 现在越来越好了。。。
    googlebot
        25
    googlebot  
       2017-10-24 09:29:34 +08:00 via iPad
    很多年前,一个牛人写一篇 blog,128m 跑 ngix,从此 ngix 就出名了,
    其实 ngix 兼容性挺差,
    lfzyx
        26
    lfzyx  
       2017-10-24 10:34:36 +08:00
    程序怎么可能特意去辨别前端是哪个 web 服务器,程序只会通过网关接口( Web Server Gateway Interface )通讯
    m939594960
        27
    m939594960  
       2017-10-24 10:47:34 +08:00
    @vus520 我看 caddy 好像商用要付费啊
    jyf007
        28
    jyf007  
       2017-10-24 10:54:44 +08:00
    @gstqc 这个叫 DSL
    @nciyuan 我透一下,某著名网站先是 wamp,接着我提议切 lnmp,结果不行,框架是 thinkphp,我找了个 nginx 的伪静态,只能正常显示页面。
    breestealth
        29
    breestealth  
       2017-10-24 11:27:57 +08:00
    @googlebot 你说的应该是当时在金山的张宴。
    toxicant
        30
    toxicant  
       2017-10-24 11:36:54 +08:00
    说差距不大的你玩玩 laravel 试试....
    scriptB0y
        31
    scriptB0y  
       2017-10-24 11:40:31 +08:00
    我还用 apache,上次配置 https 有个地方花了两年才解决……
    msg7086
        32
    msg7086  
       2017-10-24 13:06:18 +08:00   ❤️ 1
    @googlebot 128M 跑 nginx 是什么梗?
    只见过 64M 跑 nginx+mysql+wordpress 的。
    rffan
        33
    rffan  
       2017-10-24 13:44:25 +08:00
    @msg7086 LEB 好多这个究极配置,128 的 OpenVZ 说是 128,OpenVZ 应该懂的,最多也就 64 的那种。
    skylancer
        34
    skylancer  
       2017-10-24 16:33:00 +08:00
    喜欢 lighttpd 的只有我一个么
    skylancer
        35
    skylancer  
       2017-10-24 16:33:16 +08:00
    擦 居然是 nginx 节点
    MagaFun
        36
    MagaFun  
       2017-10-24 20:53:38 +08:00
    我个人属于 Apache 用习惯了,也懒得转 nginx 了,因为第一次做网站是 MediaWiki 网站。

    Apache 有的时候是真难用,比如中文子目录的问题就很烦人。不过其实我也很想学习一下 nginx 的。
    orderc
        37
    orderc  
       2017-10-25 09:57:19 +08:00
    nginx 配置简单就这样
    aabbcc
        38
    aabbcc  
       2018-12-14 01:34:14 +08:00
    @googlebot 这什么的。32M 内存 用 lighttpd + php +SQLite3 跑 typecho
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   958 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 21:14 · PVG 05:14 · LAX 14:14 · JFK 17:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.