CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

2016年11月29日23:06:22CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)已关闭评论 1,191
摘要

LNMP一键安装包 V1.5 已经在Vultr、遨游主机、搬瓦工、LocVPS、Linode、vps2ez、DiaHosting、OneAsiaHost、DigitalOcean、KVMLA、景文互联、RamNode、BuyVM、快易互联、80VPS、阿里云等众多VPS的CentOS 6-7、RHEL 6-7、Fedora 21-28、Debian 7-9、Ubuntu 10.04-18.04的32位和64位系统上测试通过(CentOS 5,Debian 6及之前版本其官网已经结束支持无法使用,Debian9上Apache需选2.4.26版本以上。

系统需求:

  1. 安装CentOS7
  2. LNMP一键安装包 V1.3
  3. 配置好系统及网络连接等正常

系统配置:

  1. 配置防火墙,开启80端口、3306端口
    1. CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙。
    2. 关闭firewall:
    3. systemctl stop firewalld.service #停止firewall
    4. systemctl disable firewalld.service #禁止firewall开机启动

  2. 安装iptables防火墙

1.yum install iptables-services #安装

vi /etc/sysconfig/iptables #编辑防火墙配置文件,开通80、3306端口

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

systemctl restart iptables.service #最后重启防火墙使配置生效

systemctl enable iptables.service #设置防火墙开机启动

  1. 关闭SELINUX

    vi /etc/selinux/config

    #SELINUX=enforcing   #注释掉

    #SELINUXTYPE=targeted  #注释掉

    SELINUX=disabled  #增加

    :wq!          #保存退出

    setenforce 0     #使配置立即生效

    getenforce      #查看当前状态

安装步骤:

一、使用putty或类似的SSH工具登陆VPS或服务器;

2、下载并安装LNMP一键安装包:

您可以选择使用下载版(推荐国外或者美国VPS使用)或者完整版(推荐国内VPS使用),两者没什么区别,只是完整版把一些需要的源码文件预先放到安装包里。

安装LNMP执行:wget -c http://soft.vpser.net/lnmp/lnmp1.5-full.tar.gz && tar zxf lnmp1.5-full.tar.gz && cd lnmp1.5-full && bash ./install.sh lnmp

如需要安装LNMPALAMP,将bash ./install.sh 后面的参数替换为lnmpalamp即可。

如果提示wget: command not found 命令不存在可以执行:yum install wget或 apt-get install wget 命令安装。

如下载速度慢请更换其他下载节点,详情请看下载页面。

国内下载节点:http://soft1.vpser.net、http://202.115.33.13/soft、http://soft5.vpser.net

国外下载节点:http://soft2.vpser.net、http://soft4.vpser.net、http://soft6.vpser.net

一定要验证MD5,MD5不对立即删除,换其他方式下载!!

文件大小:715MB MD5:ede0a87351f562f1311502741fab2de1

运行上述LNMP安装命令后,会出现如下提示:

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

目前提供了较多的MySQL、MariaDB版本和不安装数据库的选项,需要注意的是MySQL 5.6,5.7及MariaDB 10必须在1G以上内存的更高配置上才能选择!如仅需安装数据库在lnmp安装包目录下执行:./install.sh db

输入对应MySQL或MariaDB版本前面的序号,回车进入下一步.

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

设置MySQL的root密码(为了安全不输入直接回车将会设置为lnmp.org#随机数字)如果输入有错误需要删除时,可以按住Ctrl再按Backspace键进行删除(个别情况下是只需要Backspace键)。输入后回车进入下一步,如下图所示:

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,(MySQL 5.7+版本无法关闭InnoDB),输入完成,回车进入下一步。:

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

注意:选择PHP 7+版本时需要自行确认PHP版本是否与自己的程序兼容。

输入要选择的PHP版本的序号,回车进入下一步,选择是否安装内存优化:

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车,直接回车为默认为不安装。

在多线程环境使用tcmalloc和jemalloc效果非常明显。当线程数量固定,不会频繁创建退出的时候, 可以使用jemalloc;反之使用tcmalloc可能是更好的选择。

如果是LNMPA或LAMP的话还会提示设置邮箱和选择Apache

 

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

“Please enter Administrator Email Address:”,需要设置管理员邮箱,该邮箱会在报错时显示在错误页面上。

再选择Apache版本

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

提示"Press any key to install...or Press Ctrl+c to cancel"后,按回车键确认开始安装。

LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Zend Optimizer这几个软件。

安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。(笔者试了下还真要几小时,连国外的还真是慢啊?)

3、安装完成

如果显示Nginx: OK,MySQL: OK,PHP: OK

 

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并Install lnmp V1.5 completed! enjoy it.的话,说明已经安装成功。
接下来按通过sftp或ftp服务器上传网站,将域名解析到VPS或服务器的IP上,解析生效即可使用。www 目录: /home/wwwroot/default/

4、安装失败

CentOS7一键安装配置LNMP (Linux、nginx、mariadb、php)

如果出现类似上图的提示,则表明安装失败,说明没有安装成功!!需要用winscp或其他类似工具,将/root目录下面的lnmp-install.log下载下来,到LNMP支持论坛发帖注明你的系统发行版名称及版本号、32位还是64位等信息,并将lnmp-install.log压缩以附件形式上传到论坛,我们会通过日志查找错误,并给予相应的解决方法。

5、LNMP相关软件安装目录

Nginx 目录: /usr/local/nginx/

MySQL 目录 : /usr/local/mysql/

MySQL数据库所在目录:/usr/local/mysql/var/

MariaDB 目录 : /usr/local/mariadb/

MariaDB数据库所在目录:/usr/local/mariadb/var/

PHP目录 : /usr/local/php/

PHPMyAdmin目录 : 0.9版本为/home/wwwroot/phpmyadmin/ 1.0及以后版本为

/home/wwwroot/default/phpmyadmin/ 强烈建议将此目录重命名为其不容易猜到的名字

phpmyadmin可自己从官网下载新版替换。

默认网站目录 : 0.9版本为 /home/wwwroot/ 1.0及以后版本为 /home/wwwroot/default/

Nginx日志目录:/home/wwwlogs/

/root/vhost.sh添加的虚拟主机配置文件所在目录:/usr/local/nginx/conf/vhost/

PureFtpd 目录:/usr/local/pureftpd/

PureFtpd web管理目录: 0.9版为/home/wwwroot/default/ftp/ 1.0版为/home/wwwroot/default/ftp/

Proftpd 目录:/usr/local/proftpd/

Redis 目录:/usr/local/redis/

6、LNMP相关配置文件位置

Nginx主配置文件:/usr/local/nginx/conf/nginx.conf

/root/vhost.sh添加的虚拟主机配置文件:/usr/local/nginx/conf/vhost/域名.conf

MySQL配置文件:/etc/my.cnf

PHP配置文件:/usr/local/php/etc/php.ini

php-fpm配置文件:/usr/local/php/etc/php-fpm.conf

PureFtpd配置文件:/usr/local/pureftpd/pure-ftpd.conf

PureFtpd MySQL配置文件:/usr/local/pureftpd/pureftpd-mysql.conf

Proftpd配置文件:/usr/local/proftpd/etc/proftpd.conf 1.2及之前版本为/usr/local/proftpd/proftpd.conf

Proftpd 用户配置文件:/usr/local/proftpd/etc/vhost/用户名.conf

Redis 配置文件:/usr/local/redis/etc/redis.conf

7、LNMPA相关目录文件位置

Apache目录:/usr/local/apache/

Apache配置文件:/usr/local/apache/conf/httpd.conf

Apache虚拟主机配置文件目录:/usr/local/apache/conf/vhost/

虚拟主机配置文件名称:/usr/local/apache/conf/vhost/域名.conf

lnmp 1.5开始支持只安装MySQL/MariaDB数据库或Nginx增加单独nginx安装,安装包目录下运行:./install.sh nginx 进行安装;增加单独数据库安装,安装包目录下运行:./install.sh db 进行安装;

8、启用opcache

此脚本是用来安装opcache的,是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件。LNMP 1.2下安装的PHP 5.5或更高版本的PHP不需要额外安装OPcache,默认已经安装上。
1.3上默认已安装但未启用执行:./addons.sh install opcache 进行开启。

安装

进入lnmp解压后的目录,执行:./addons.sh install opcache
Opcache和eAccelerator是冲突的,脚本会卸载eAccelerator后再安装Opcache,回车确认后就会自动安装opcache。

卸载
执行:./addons.sh uninstall opcache

常见问题(FAQ)