LNMP-Linux下Nginx+MySQL+PHP+phpMyAdmin一键安装包(2015年6月1日更新)


LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian VPS(VDS)或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。

LNMPA是在LNMP的基础上产生的新的扩展,目前LNMP一键安装包的用户可以直接升级到LNMPA(Nginx、MySQL、PHP、 Apache),由Nginx作为前端处理静态页面、js、图片等,Apache作为后端处理PHP,解决高并发时php-cgi的502问题,提高服务 器处理动态内容的能力及稳定性。

LNMP一键安装包官网:https://lnmp.org/

LNMP一键安装包 V1.2 已经在LinodeDiaHostingPhotonVPSDigitalOceanVR香港VPS遨游主机RamNodeBudgetVM瑞豪开源DirectSpaceKVMLAOneAsiahost新加坡VPS景文互联HostigationBuyVMLocVPS80VPSXSVPS等众多VPS的CentOS 5-7、Debian 5-8、Ubuntu 10.04-15.04的32位和64位系统上测试通过。

安装教程:https://lnmp.org/install.html

添加、删除虚拟主机及伪静态管理:https://lnmp.org/faq/lnmp-vhost-add-howto.html

eAccelerator,xcache,memcached,imageMagick,ionCube、opcache、redis的安装:https://lnmp.org/faq/addons.html

LNMP相关软件目录及文件位置:https://lnmp.org/faq/lnmp-software-list.html

LNMP状态管理命令:https://lnmp.org/faq/lnmp-status-manager.html

使用交流论坛:http://bbs.vpser.net/forum-25-1.html
友情提示:Linux下操作请注意大小写。

203 Responses to LNMP-Linux下Nginx+MySQL+PHP+phpMyAdmin一键安装包(2015年6月1日更新)

  1. licess says:

    @lao, 说明写的很清楚了:
    自动添加虚拟主机:
    如果是11月17日之前下载的lnmp需要修改nginx.conf,再最后一个 } 前加入include vhost/*.conf;
    运行./vhost.sh ,根据提示首先输入域名,再输入目录即可完成添加,直接到创建的目录上传文件即可。

    并不是修改nginx.conf,都是include进去的。

  2. redasurc says:

    您好,很感谢提供lnmp一键安装包,不知何时能升级到PHP 5.3.1(目前官方推荐版本)及nginx 0.8.21

    licess Reply:

    @redasurc, lnmp一直走的是生产环境的路线,要的是稳定行,所以不会出了新版就会换上新版,当时机成熟适合生产环境,肯定会升级的。

  3. 断峰狼 says:

    安装后居然找不到这些路径,
    MySQL : /usr/local/mysql
    MySQL数据库:/usr/local/mysql/var
    PHP : /usr/local/php
    Nginx : /usr/local/nginx
    PHPMyAdmin /home/wwwroot/phpmyadmin
    Web目录 /home/wwwroot

    不知道哪一步出错了,郁闷~

    licess Reply:

    一个都没有吗?你的VPS是CentOS还是Debian?

  4. hzoom says:

    eAcelerator这个是不是没有集成?

    licess Reply:

    默认没有安装,需要安装完后自己运行./eaccelerator.sh 就会自动安装好。

  5. ym says:

    怎么http://soft.vpser.net/lnmp/lnmp0.3.tar.gz下载不了啦?可否把它放到网盘上并贴出下载地址?

    licess Reply:

    @ym, 你怎么下载的,wget吗?这个地址是正确的,是不是没有安装wget~另外,放网盘上地址不方便而且没有多少网盘支持你直接给你下载地址的~

  6. ym says:

    这个包已下载。一个问题,怎么我装了这个包后,访问网站出现“403 Forbidden”的提示呢?如何解决呢?

    licess Reply:

    @ym, 这个提示是,你访问的域名对应的目录下面没有index 所指定index.html 或index.php~所以显示403 Forbidden~是正常现象,上传你的网站,只要你的网站目录下保护index.html、index.html、index.php其中的任意一个就会显示你的网站。

  7. Showfom says:

    装完以后 The connection has timed out 是咋回事嗫。。。

  8. Showfom says:

    卸载的时候说

    ./uninstall.sh: line 56: syntax error near unexpected token `fi'
    ./uninstall.sh: line 56: `fi'

    licess Reply:

    已解决,可以重新下载新版本。

  9. Showfom says:

    算了 我全部手工卸载重装
    话说,卸载就是把那几个目录删除即可??

  10. imacer says:

    我在linode的centos5.3,安装了两次都出现

    =========================================================================
    LNMP V0.3 for CentOS/RadHat Linux VPS Written by Licess
    =========================================================================

    For more information please visit http://blog.licess.cn/lnmp/

    run nginx+php-cgi: /root/run.sh
    default mysql root password:root
    phpinfo test: http://domain.name/phpinfo.php
    phpMyAdmin test: http://domain.name/phpmyadmin
    Prober : http://domain.name/prober.php
    The path of some dirs:
    mysql dir: /usr/local/mysql
    php dir: /usr/local/php
    nginx dir: /usr/local/nginx
    web dir /home/wwwroot

    =========================================================================

    但是local目录下根本没有那些文件夹,不知道什么原因……

  11. 小白 says:

    问你个简单问题,我想用nginx绑定www.123.com,可是在浏览器输入www.123.com不可能看到我建的web网站,只能输入虚拟机的ip的地址才能看见。请问,我怎样能输入www.123.com也能看见我做的网页呢?

    licess Reply:

    @小白, nginx绑定的同时,域名也要将IP解析过去才可以,直接用域名访问网站。

  12. Pingback: Tweets that mention LNMP-Linux下Nginx+PHP+MySQL+phpMyAdmin+eAcelerator一键安装包 - Licess's Blog -- Topsy.com

  13. Linux新手 says:

    安装好了吧你的安装包,但好像不支持SHTML的INCLUDE的,我根据网上教程修改nginx.conf文件后网站既然都访问不了了

    还有一个问题就是新添加绑定个域名,也生成对应的文件了,但就是不能够访问绑定的目录,还是访问到根目录的???
    希望管理员帮忙解决下这2个问题

    licess Reply:

    @Linux新手, 需要在编译的时候添加ngx_http_ssi_module模块,安装好后在nginx 的配置文件nginx.conf,在里面的http里添加下面几行配置:
    ssi on;
    ssi_silent_errors on;
    ssi_types text/shtml;

  14. 水手 says:

    您好!我的是独立的服务器,一个小时以前访问正常,现在突然就访问不了了,能ping通。我kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 几次不行,又重启了还是不行。在windows 下 telnet 80 3306 25都不行,telnet 22是可以的。是怎么回事呢?有什么解决的办法?

    licess Reply:

    运行ps aux 查看是否nginx在运行,如果没有运行,killall php-cgi,再运行/root/run.sh

  15. 水手 says:

    您好!我的是独立的服务器,一个小时以前访问正常,现在突然就访问不了了,能ping通。我kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 几次不行,又重启了还是不行。在windows 下 telnet 80 3306 25都不行,telnet 22是可以的。是怎么回事呢?有什么解决的办法?

    licess Reply:
    一月 12th, 2010 at 10:30 下午

    运行ps aux 查看是否nginx在运行,如果没有运行,killall php-cgi,再运行/root/run.sh

    感谢您的帮助,我按照你的方法做了,没有发现nginx进程。

    [root@centos ~]# killall php-cgi
    [root@centos ~]# ./run.sh
    Starting php_fpm done
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: still could not bind()

    怎么回事呢?

    licess Reply:

    @水手, 应该是修改过配置文件,/usr/local/nginx/sbin/nginx -t 看一下那个地方错了

  16. ym says:

    hi.博主:
    如果我通过你购买vps,可否承诺替我配置ssl证书?

  17. koo2 says:

    [root@koo2~]# /root/run.sh
    Starting php_fpm done
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: still could not bind()

    我也出现了前面那位仁兄同样的问题,这是怎么回事呢?

  18. koo2 says:

    [root@koo2~]# /root/run.sh
    Starting php_fpm Failed loading /usr/local/zend/Zend/ZendOptimizer.so: /usr/local/zend/ZendOptimizer.so: cannot restore segment prot segment prot after reloc: Permission denied done
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: still could not bind()

  19. koo2 says:

    刚才的问题已经解决了

  20. Zeddicus says:

    Centos是64BIT的么?我装了以后vhost.sh无法建立VHOST。。。对了,不知道有没有删除的功能

  21. wangjw302 says:

    安装Vsftpd 出现一下错误 是怎么回事啊??
    ./installvsftpd.sh
    =========================================================================
    Vsftpd for LNMP Written by Licess
    =========================================================================
    A tool to auto-compile & install VSftp for LNMP on Linux
    For more information please visit http://blog.licess.cn/lnmp/

    =========================================================================

    start download vsftpd package
    --2010-01-24 10:06:26-- http://licess.googlecode.com/files/vsftpd-2.1.0.tar.gz
    Resolving licess.googlecode.com... 74.125.155.82
    Connecting to licess.googlecode.com|74.125.155.82|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 178636 (174K) [application/x-gzip]
    Saving to: `vsftpd-2.1.0.tar.gz.3'

    100%[======================================>] 178,636 636K/s in 0.3s

    2010-01-24 10:06:27 (636 KB/s) - `vsftpd-2.1.0.tar.gz.3' saved [178636/178636]

    download vsftpd package finished!
    installing vsftpd 2.1.0.......
    mkdir: cannot create directory `/usr/local/man/man8': File exists
    mkdir: cannot create directory `/usr/local/man/man5': File exists
    make: `vsftpd' is up to date.
    if [ -x /usr/local/sbin ]; then \
    install -m 755 vsftpd /usr/local/sbin/vsftpd; \
    else \
    install -m 755 vsftpd /usr/sbin/vsftpd; fi
    if [ -x /usr/local/man ]; then \
    install -m 644 vsftpd.8 /usr/local/man/man8/vsftpd.8; \
    install -m 644 vsftpd.conf.5 /usr/local/man/man5/vsftpd.conf.5; \
    elif [ -x /usr/share/man ]; then \
    install -m 644 vsftpd.8 /usr/share/man/man8/vsftpd.8; \
    install -m 644 vsftpd.conf.5 /usr/share/man/man5/vsftpd.conf.5; \
    else \
    install -m 644 vsftpd.8 /usr/man/man8/vsftpd.8; \
    install -m 644 vsftpd.conf.5 /usr/man/man5/vsftpd.conf.5; fi
    if [ -x /etc/xinetd.d ]; then \
    install -m 644 xinetd.d/vsftpd /etc/xinetd.d/vsftpd; fi
    mkdir: cannot create directory `/etc/vsftpd': File exists
    mkdir: cannot create directory `/var/ftp': File exists
    setsebool: SELinux is disabled.
    Saving firewall rules to /etc/sysconfig/iptables: [ OK ]
    Flushing firewall rules: [ OK ]
    Setting chains to policy ACCEPT: raw nat mangle filter [ OK ]
    Unloading iptables modules: [ OK ]
    Applying iptables firewall rules: [ OK ]
    Loading additional iptables modules: ip_conntrack_netbios_ns [FAILED]
    adduser: user goicadminftp exists
    Terminated

    licess Reply:

    @wangjw302, 没有安装失败,iptables那个地方出了问题。把iptables关了吧。

  22. .... says:

    vsftp 有很大的问题. 什么时候调整下.

  23. paul says:

    Starting php_fpm Failed loading /usr/local/zend/ZendOptimizer.so: /usr/local/zend/ZendOptimizer.so: wrong ELF class: ELFCLASS64
    done
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
    [emerg]: still could not bind()

    怎么出现了这个错误?

    我测试了Nginx的配置也没什么问题
    #/usr/local/nginx/sbin/nginx -t

    the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    configuration file /usr/local/nginx/conf/nginx.conf test is successful

  24. Cody says:

    关于安装了0.3版本的LNMP后 在phpmyadmin管理中出现了 链接表的额外特性尚未激活。要查出原因,请点击此处。 不知道其他朋友出现过没有

    出现这个问题,该如何解决,这个信息对PHPMYADMIN 有没有影响,或老大有更好的解决方法。谢谢

    licess Reply:

    对phpmyadmin没有影响的。

  25. Cody says:

    不好意识又来麻烦老大呢,遇到一个问题,一直不敢去尝试去弄他,在安装lnmp0.3后,发现数据库为 mysql 5.1.35的数据库 但是我有套程序,需要PDO和PDO_MYSQL的支持 但是在环境测试里 只有PDO 没有PDO_MYSQL ,请问如果用了老大的lnmp 后期该如何添加类似这样的组件
    比如:pdo_mysql 添加这样类似的组件 对 lnmp本身的运行有没有什么冲突,麻烦老大提供下,在lnmp0.3环境下添加pdo_mysql的方法,谢谢
    和后期我们需要添加其他组件需要注意的 !

    licess Reply:

    @Cody, lnmp0.4会加入PDO_MYSQL的。
    具体安装方法如下:
    wget -c http://soft.vpser.net/web/pdo/PDO_MYSQL-1.0.2.tgz
    tar zxvf PDO_MYSQL-1.0.2.tgz
    cd PDO_MYSQL-1.0.2/
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
    make && make install

  26. Cody says:

    首先对老大的无私解答,小弟表示真诚的感谢,因为是一个新手,所以问了一下很多,低级的问题,老大很耐心的为我解答,真的很感谢!

    同时,现在遇到一个关于VSFTP 问题 利用的老大提供的集成包(VSFTP )遇到了没办法限制每个用户的空间大小,在网上找到一些利用磁盘配额

    来做限制的,感觉上讲的很笼统,请问老大针对LNMP for VSFTP 集成包,有么有很更好的方法限制空间大小!

    第二。老大提到的在lnmp0.4集成包会增加pdo_mysql的支持,请问如果我们安装了lnmp0.3的集成包,如何可以升级到lnmp0.4 是否有升级包,或是

    有什么其他的方法,谢谢。

    建议:希望老大在lnmp0.4中,增加对VSFTP 对单个用户空间大小流量限制的功能!

    例外个人还有一件事,希望能联系到老大 详细和老大聊聊
    请老大提供下,联系方式

  27. 阿类 says:

    licess Reply:
    二月 5th, 2010 at 3:42 下午

    @Cody, lnmp0.4会加入PDO_MYSQL的。
    具体安装方法如下:
    wget -c http://soft.vpser.net/web/pdo/PDO_MYSQL-1.0.2.tgz
    tar zxvf PDO_MYSQL-1.0.2.tgz
    cd PDO_MYSQL-1.0.2/
    /usr/local/php/bin/phpize
    ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
    make && make install

    用老大的这个方法安装完后,还是phpinfo() 显示不了PDO_MYSQL 的支持
    通过网上搜索 好像需要更改php.ini 但是我发现 php.ini好多组件都是没注释掉;这个的
    所以不知道该如何修改php.ini

  28. df says:

    hi.既然已装了ssl module,博主可否写篇文章说明一下如何设置https,我看了网上好多文章,都未搞定

  29. allgtd says:

    请问 能 增加也给 Nginx + php + fast-cgi +mysql 的版本吗?

  30. Pingback: WordPress本地测试环境搭建 | 君看一叶舟,出没风波里 | Timothy's Space

  31. Pingback: 初试VPS的一些感想以及安装LNMP | linux | 猪小猪'space

  32. 林龙 says:

    为什么更改 /usc/local/nginx/conf/nginx.conf 里面的默认目录/home/wwwroot 以后出现502 Bad Gateway这个错误

    难道默认目录不能该吗? 我想启用泛解析功能

    licess Reply:

    @林龙, 泛解析,你直接用*.abc.com 就可以。更改目录也不会引起502,你把配置发上来看看。发论坛里吧:http://bbs.vpser.net/forum-25-1.html

  33. 林龙 says:

    我找到原因啦,现在已经好了,是eaccelerator这个东西,添加这个组件以后导致PHP出现的错误

  34. Pingback: LNMP-Linux下Nginx+MySQL+PHP+phpMyAdmin+eAcelerator一键安装包(2009年11月17日更新) - After x

  35. j_yf says:

    安装vsftpd for lnmp的时修改出现:

    setsebool: SELinux is disabled.
    将当前规则保存到 /etc/sysconfig/iptables: [ 确定 ]
    清除防火墙规则: [ 确定 ]
    把 chains 设置为 ACCEPT 策略:filter [ 确定 ]
    正在卸载 Iiptables 模块: [ 确定 ]
    应用 iptables 防火墙规则: [ 确定 ]
    adduser: cannot create directory /web/wwwroot
    已终止

  36. wangking says:

    虚拟主机面板路径是多少?

发表评论

(required)

This site uses Akismet to reduce spam. Learn how your comment data is processed.