lnmp 一键安装包是由 lnmp.org 军哥使用 Linux Shell 编写的 lnmp、lnmpa、lamp 生产环境安装 Shell 程序,可以为 CentOS、RHEL、Fedora、Debian、Ubuntu、Raspbian、Deepin、Aliyun、Amazon 等 Linux 主机安装 Nginx、MySQL/MariaDB、PHP、FTP、 常用缓存组件等系统环境管理工具。

安装要求

系统:CentOS、RHEL、Fedora、Debian、Ubuntu、Raspbian、Deepin、Aliyun、Amazon、Mint Linux

环境:需要128MB以上内存,小内存不支持使用64位系统,需要5GB以上可用空间

演示:CentOS 8.4 64位、LNMP一键安装包 V1.9 正式版

安装步骤

1、使用 putty 或其他SSH工具登陆服务器,执行以下命令,进行下载安装 LNMP 一键安装包 V1.9 正式版,默认为 LNMP,如需要安装 LNMPA 或 LAMP,将 ./install.sh 后面的参数 lnmp 替换为 lnmpa 或 lamp 即可,如下图:

# 一键安装命令
wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz -cO lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh lnmp

# 安装包更新记录
https://lnmp.org/changelog.html

下载并安装LNMP一键安装包

2、运行以上 lnmp 安装命令后,会出现如下提示安装 Mysql 界面,目前提供了较多的 MySQL、MariaDB 版本与不安装数据库选项,这里我们选择了 默认的 Mysql 5.5.62,然后提示设置 Mysql 的密码,输入密码回车输入“y”确定,需要注意的是选择安装 MySQL 5.6,5.7 及 MariaDB 10,内存大于 1G 以上,如下图:

安装数据库环境

3、确认完成数据库设置后,就会提示安装 php 组件,选择 PHP 版本时需要自行确认 PHP 版本是否与自己的网站程序兼容,输入要选择的 PHP 版本的序号,回车下一步,如下图:

确认自己的PHP版本进行安装

4、接着就是选择是否安装内存优化,可以选择不安装、Jemalloc 或 TCmalloc,输入对应序号回车,直接回车为默认为不安装,根据需求选择,出现 Press any key to install ... 绿色提示,按回车确认开始安装,如下图:

确认是否安装内存优化模块

5、然后就是耐心等待 lnmp 安装完成,安装过程中不要关闭SSH登录工具,安装时间可能会几十分钟到几个小时,主要看服务器的配置和网速等因素,安装成功会有绿色提示:Install lnmp V1.9 completed!enjoy it,安装失败会有红色提示:Error,如下图:

lnmp安装完成提示

添加网站

1、执行以下命令进行添加网站,以后添加网站也用以下命令,输入后会提示输入主域名,回车确认会询问是否添加更多域名,多个域名空格隔开,如不需要绑其他域名就直接回车,支持 * 通配符,如下图:

lnmp vhost add

创建添加网站域名

2、设置网站的目录,回车默认路径 /home/wwwroot/域名,路径设置完成确认是否添加伪静态规则,默认支持伪静态规则如下,输入“y”确认添加,演示为:zblog,没有可用的伪静态规则,可在 /usr/local/nginx/conf/rewrite/ 路径下添加,如下图:

# 支持伪静态规则
discuz
discuzx
discuzx2(Discuz X二级目录)
wordpress
wp2(WordPress二级目录)
typecho
typecho2(Typecho二级目录)
sablog
emlog
dabr
phpwind
dedecms
drupal
ecshop
shopex
# 不支持可以在以下路径添加
/usr/local/nginx/conf/rewrite/

确认网站路径和伪静态规则

3、是否启用 php pathinfo,默认回车不启用,直接“n”跳过,启用网站日志输入“y”,确认日志名称,直接默认回车,确认是否启用 IPv6,根据服务器是否提供了 IPv6 进行选择,这里我们不支持直接“n”跳过,如下图:

确认是否开启pathinfo和ipv6

4、是否添加数据库“y”,验证 Mysql 的超级密码,提示 Enter database name 输入数据库名称,用户名与数据库同名,回车确认,提示 Please enter password for mysql user 数据库名: 就输入数据库密码,不想添加数据库可直接“n”,后面自行使用 phpmyadmin 进行创建,如下图:

是否添加数据库.png

5、是否开启 SSL 访问,如果需要添加输入“y”,不添加输入“n”回车,这里我们输入“y”开启,提示 4 个选项,分别为:自己添加证书 和 在线申请 Let's Encrypt、BuyPass、ZeroSSL 的免费证书(支持申请通配符ssl证书),接着输入“1”添加自有证书就会提示添加证书路径(提前上传或添加自定路径后上传),在线申请免费证书时提前解析域名到服务器上,如下图:

启用HTTPS并设置301跳转

6、以上设置完成后,就会开始自动部署添加网站,添加成功会提示添加的域名、目录、伪静态、日志、数据库、SSL、IPv6等相关信息,如下图:

添加网站完成后输出的信息

删除网站

删除网站直接执行以下命令,执行命令后会先列出当前存在网站域名,按提示输入要删除的网站域名,直接回车确认,如下图:

lnmp vhost del

删除网站

缓存加速

LNMP 支持安装 安装 eAccelerator、xcache、memcached、imageMagick、ionCube、redis、Opcache 等程序缓存组件,默认已安装 Opcache 缓存加速组件,但 Opcache 和 eAccelerator 互相冲突,一定要注意,其他安装使用方法参考以下内容。

Opcache

Opcache 是 Zend 开发的闭源但可以免费使用的 PHP 优化加速组件,LNMP 默认已安装。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install opcache

#卸载命令
./addons.sh uninstall opcache

eAccelerator

eAccelerator 是一个自由开放源码 php 加速器,优化和动态内容缓存,提高了 php 脚本的缓存性能,使得 PHP 脚本在编译的状态下,对服务器的开销几乎完全消除,它还有对脚本起优化作用,以加快其执行效率。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install eaccelerator

#卸载命令
./addons.sh uninstall eaccelerator

# 对应版本
1、eaccelerator 0.9.5.3 支持 PHP 5.2
2、eaccelerator 0.9.6.1 支持PHP 5.2、5.3
3、eaccelerator 1.0-dev 支持PHP 5.2、5.3、5.4

Xcache

XCache 是一个国人开发的又快又稳定的 PHP opcode 缓存器,经过良好的测试并在大流量/高负载的生产机器上稳定运行,支持所有现行PHP分支的最新发布版本,执行命令后需要设置 Xcache 管理页面的密码。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install xcache

#卸载命令
./addons.sh uninstall xcache

Memcached

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度,执行命令后可以根据自己的需求选择 memcache 或 memcached 扩展,本站采用此方案。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install memcached

#卸载命令
./addons.sh uninstall memcached

imageMagick

ImageMagick 是一个用于查看、编辑位图文件以及进行图像格式转换的开放源代码软件套装。它可以读取、编辑超过100种图象格式,可用来替换GD库,Discuz X 里设置时路径需要填写:/usr/local/imagemagick/bin/,并且禁用函数里的 exec 才可以正常使用。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install imagemagick

#卸载命令
./addons.sh uninstall imagemagick

ionCube

ionCube 是用来安装 ionCube loader 的,ionCube loader 是用来解密 ionCube 加密的PHP脚本,如 whmcs 就采用 ionCube 加密。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install ionCube

#卸载命令
./addons.sh uninstall ionCube

Redis

Redis 是一个开源、支持网络、基于内存、键值对存储数据库,其他介绍就不用说了,大名鼎鼎何须说明。

# 进入目录
cd /root/lnmp1.9/

# 安装命令
./addons.sh install redis

#卸载命令
./addons.sh uninstall redis

常用命令

LNMP 一键安装包功能很多,以下为本站提供的一些常用命令,如果需要深入学习和了解 LNMP 一键安装包,建议大家前去 lnmp.org 进行阅读。

# 添加网站
lnmp vhost add

# 列出网站
lnmp vhost list

# 删除网站
lnmp vhost del

# 删除防跨站文件
rm -f /网站目录/.user.ini

# Nginx 状态管理
/etc/init.d/nginx {start|stop|reload|restart}

# MySQL状态管理
/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}

// 以下需要进入 lnmp 解压目录执行,默认:/root/lnmp1.9/

# Nginx升级
./upgrade_nginx.sh

# PHP升级
./upgrade_php.sh

# Mysql升级
./upgrade_mysql.sh

# 单独nginx安装
./install.sh nginx

# 单独数据库安装
./install.sh db

# 添加数据库命令
lnmp database add

# 编辑数据库用户密码命令
lnmp database edit

# 删除数据库命令
lnmp database del

# 列出所有数据库命令
lnmp database list

# 环境组件安装卸载
./addons.sh {install|uninstall} {eaccelerator|xcache|memcached|opcache|redis|imagemagick|ioncube}

# FTP安装
./pureftpd.sh

最后说明

特别要说的就是在线申请免费证书,如开始申请时没有解析域名,导致申请失败,就需要删除添加的网站,解析域名后重新进行添加网站申请,添加自有的加密证书时,推荐路径为 /usr/local/nginx/conf/ssl/域名/证书文件,可以提前长传,也可以创建完成后上传,注意文件格式。

安装部分组件或需要升级组件都需要在 lnmp 下载解压缩后的目录执行命令,默认下载解压目录为 /root/lnmp版本号,升级组件时做好快照和镜像,尤其是 Mysql 升级风险较大,虽会自动备份数据,但保不齐会出现什么问题,没事就不要升级 Mysql 了。