注:以下内容是https://lnmp.org/install.html网站关于lnmp1.8版本的安装说明副本,安装流程仅供参考,请以该网站的最新版本安装程序和安装说明为准。
1. 说明
1.1. LNMP一键安装包是什么?
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Aliyun/Amazon、Debian/Ubuntu/Raspbian/Deepin/Mint Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。
1.2. 我们为什么需要它?
编译安装需要输入大量的命令,如果是配置生产环境需要耗费大量的时间。
不会Linux的站长或Linux新手想使用Linux作为生产环境……
1.3. 它有什么优势和功能?
无需一个一个的输入命令,无需值守,编译安装优化编译参数,提高性能,解决不必要的软件间依赖,特别针对配置自动优化。
支持自定义Nginx、PHP编译参数及网站和数据库目录、支持生成LetseEcrypt证书、LNMP模式支持多PHP版本、支持单独安装Nginx/MySQL/MariaDB/Pureftpd服务器,同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、常用缓存组件Redis/Xcache等的安装、重置MySQL root密码、502自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。
1.4. 如何获取它?
你可以自由下载并使用它在VPS或独立服务器上,作为真正的生产环境或测试环境。
1.5. 我们为什么采用LNMPA这种架构?
采用Linux、PHP、MySQL的优点我们不必多说。
Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,已经在一些俄罗斯的大型网站上运行多年,目前很多国内外的门户网站、行业网站也都在是使用Nginx,相当的稳定。
Nginx相当的稳定、功能丰富、安装配置简单、低系统资源……
Apache是一款老牌的Web服务器软件,在高并发时对队列的处理比FastCGI更成熟,Apache的mod_php效率比php-cgi更高且更稳定、对伪静态支持好,不需要转换、多用户多站点权限等方面有着更好的效果……
2. 安装
2.1. 系统需求:
- CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Aliyun/Amazon/Mint Linux发行版
- 需要5GB以上硬盘剩余空间,MySQL 5.7,MariaDB 10至少9GB剩余空间
- 需要128MB以上内存(128MB小内存VPS,Xen需有SWAP,OpenVZ至少要有128MB以上的vSWAP或突发内存),注意小内存请勿使用64位系统!
- 安装MySQL 5.6或5.7及MariaDB 10必须1G以上内存,更高版本至少要2G内存!。
- 安装PHP 7及以上版本必须1G以上内存!。
- VPS或服务器必须设置好可用的yum或apt-get源并确保能正常工作,离线安装需要增加 CheckMirror=n 参数!
- Linux下区分大小写,输入命令时请注意!
- 如有通过yum或apt-get安装的MySQL/MariaDB请自行备份数据等相关文件!
- CentOS 5,Debian 6及之前版本其官网已经结束支持无法使用!
- Ubuntu 18+,Debian 9+,Mint 19+,Deepin 15.7+及所有新的Linux发行版只能使用1.7进行安装!
- PHP 7.1.*以下版本不支持Ubuntu 19+、Debian 10等等非常新的Linux发行版!
- 阿里云Ubuntu 14.04系统模版有问题不要用!!!
- PHP 7.4升级或安装必须CentOS 7+,Debian 8+,Ubuntu 16.04+且必须使用1.7!!!
- MySQL 8.0升级或安装必须CentOS 8+,Debian 9+,Ubuntu 16.04+且必须使用1.7!!!
- LNMP一键安装包 V1.7 已经在Vultr、遨游主机、搬瓦工、LocVPS、Linode、vps2ez、DigitalOcean、KVMLA、景文互联、BuyVM、狗云、80VPS、腾讯云等众多VPS的CentOS 6-8、RHEL 6-8、Fedora 21-32、Debian 7-10、Ubuntu 10.04-20.04等众多Linux发行版的32位和64位系统上测试通过(CentOS 5,Debian 6及之前版本其官网已经结束支持无法使用,Debian9上Apache需选2.4.26版本以上。
2.2. 安装步骤:
使用putty或类似的SSH工具登陆VPS或服务器;登陆后运行:screen -S lnmp
。如果提示screen: command not found
可以先执行:apt-get install screen
进行安装。
下载并安装LNMP一键安装包。您可以选择使用下载版(推荐美国及海外VPS或空间较小用户使用)或者完整版(推荐国内VPS使用,国内用户可用在下载中找国内下载地址替换),两者没什么区别,只是完整版把一些需要的源码文件预先放到安装包里。
安装LNMPA稳定版。
如需要安装LNMP或LAMP,将./install.sh
后面的参数lnmpa
替换为lnmp
或lamp
即可。同时也支持单独安装Nginx或数据库,命令为 ./install.sh nginx
或 ./install.sh db
。如需更改网站和数据库目录、自定义Nginx参数、PHP参数模块、开启lua等需在运行./install.sh
命令前修改安装包目录下的 lnmp.conf
文件,详细可以查看lnmp.conf
文件参数说明。
如提示wget: command not found
,请先使用apt install wget
命令安装wget再执行上述命令安装。
运行上述LNMP安装命令后,会出现类似的如下图提示,选择安装的数据库版本:
目前提供了较多的MySQL、MariaDB版本和不安装数据库的选项,需要注意的是MySQL 5.6,5.7及MariaDB 10必须在1G以上内存的更高配置上才能选择!如仅需安装数据库在lnmp安装包目录下执行:./install.sh db
输入对应MySQL或MariaDB版本前面的序号,回车进入下一步。
设置MySQL的root密码(为了安全不输入直接回车将会设置为lnmp.org#随机数字
)如果输入有错误需要删除时,可以按住Ctrl再按Backspace进行删除(个别情况下是只需要Backspace键)。输入后回车进入下一步,如下图所示:
询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,(MySQL 5.7+版本无法关闭InnoDB),输入完成,回车进入下一步。
注意:选择PHP 7+版本时需要自行确认PHP版本是否与自己的程序兼容。
输入要选择的PHP版本的序号,回车进入下一步,选择是否安装内存优化:
可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车,直接回车为默认为不安装。
如果是LNMPA或LAMP的话还会提示设置邮箱和选择Apache。
“Please enter Administrator Email Address:”,需要设置管理员邮箱,该邮箱会在报错时显示在错误页面上。
再选择Apache版本。
按提示输入对应版本前面的数字序号,回车。
提示"Press any key to install...or Press Ctrl+c to cancel"后,按回车键确认开始安装。
LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin、Apache等软件及相关的组件。
安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。
3. 安装完成
如果显示Nginx: OK,MySQL: OK,PHP: OK,Apache: OK
并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并提示安装使用的时间及Install lnmp V1.8 completed! enjoy it.的话,说明已经安装成功。
某些系统可能会一直卡在Install lnmp V1.8 completed! enjoy it.不自动退出,可以按Ctrl+C退出。
安装完成接下来开始使用就可以了,按添加虚拟主机教程,添加虚拟主机后可以使用sftp或ftp服务器上传网站代码,将域名解析到VPS或服务器的IP上,解析生效即可使用。
4. 创建站点并添加证书
添加证书请参考https://lnmp.org/faq/letsencrypt-wildcard-ssl.html中的方式进行。
如果要启用https访问则需要为服务端添加证书。建议使用DNSAPI首先生成证书。
首先请向DNS的服务商获取API Key与Secret,然后根据下方的图中找到为您提供DNS解析的服务商的名称,将所需的API参数结合您申请获取到的Key以及Secret输入控制台作为变量。以阿里云为例,输入的内容样式如下,注意要将其中的123456
以及abcdef
更改为服务商提供的API Key以及API Secret。
接下来输入命令:lnmp onlyssl ali
,这里的ali
为例子,表示您的域名服务商简称,如果是其他DNS服务商,参考链接中提供的内容进行更改。只不过在添加过程中不需要输入网站目录、是否开启日志等选项。
该模式下之创建SSL证书并不生成网站配置文件,方便用户在多个虚拟主机上使用同一个证书。自己可以使用 lnmp vhost add
或 lnmp ssl add
创建SSL站点配置文件。