LNMP / LAMP 一键安装包 – 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

如今我们建站较多的还是会选择VPS云服务器,很少会去选择虚拟主机,固然前者有很多的优点。不过相比虚拟主机不同的是,VPS云服务器需要我们自己配置WEB环境,而且我们较多的还是会选择的Linux系统服务器,因为Linux系统服务器兼容我们常用的PHP+MySQL语言比较好,而且支持的扩展、文档比较多。

目前,我们看到的麦子优选笔记采用的LNMP部署的WEB环境,在Linux镜像中配置PHP、MySQL、Nginx,于是我们会称作为LNMP。不过对于新人来说,直接去编译安装SHELL脚本肯定是一件困难的事情。有没有一件傻瓜式安装工具脚本呢?这里麦子要推荐的来自国内比较老牌且一直更新维护的 「LNMP 一键安装包」,我们可以较为直观且无人值守的安装需要的WEB网站服务器环境。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

第一、LNMP 脚本安装教程

LNMP 脚本实际上看似还是比较简单的,其实就是我们手工编译安装 Nginx、MySQL、PHP、FTP 等等软件,这里直接用过一键脚本直接复制黏贴到Linux SSH远程服务器中,然后通过可视化的界面,直接输入选择需要安装的软件版本。在效率上比我们自己摸索的去编译安装节省很多时间,毕竟我们拿到服务器直奔主题的是要去建站的,不能花费较多的时间在配置服务器运维的工作上。

LNMP 一键安装脚本」是开源免费的,而且每年6月1日会有大版本更新,平时如果有安全补丁也会及时的保持最新软件版本支持。目前,LNMP 脚本能够兼容在我们常见的 CentOSDebianUbuntu 等Linux服务器环境安装。当然,不仅仅是可以安装 LNMP 环境,还支持安装LAMP,这里就是将Nginx 换成Apache。

LNMP 一键安装环境的还有一个很大的优点就是支持我们小工具安装需要的软件,比如FTP、MariaDB、PHP、Let’s Ecrypt免费证书等,这些都可以直接通过便捷的小工具快速的安装。这样优秀的软件,我们要不要试试呢?

1、LNMP 一键安装脚本

我们在安装LNMP脚本之前需要先确保服务器的硬件配置,麦子个人建议在512MB内存以上、10GB硬盘以上。如果我们需要安装特定版本软件的,需要遵循这几个可能版本推荐支持。

  • 安装MySQL 5.6或5.7及MariaDB 10必须1G以上内存,更高版本至少要2G内存
  • 安装PHP 7及以上版本必须1G以上内存
  • CentOS 6请用lnmp 1.8+版本进行安装
  • PHP 7.4升级或安装必须CentOS 7+,Debian 8+,Ubuntu 16.04+且必须使用1.7+
  • MySQL 8.0.23以下版本升级或安装必须CentOS 8+,Debian 9+,Ubuntu 16.04+且必须使用1.7+
  • MySQL 8.0.24以上版本升级或安装必须Debian 11+,Ubuntu 20.04+,Fedora 33+且必须使用1.8

目前,LNMP一键包最新版本是1.8版本,所以我们在安装的时候,需要对应版本和软件的支持。当然,如果在安装过程中出现问题,就要检查是不是系统版本和软件版本不兼容的问题。

安装screen和Wget:

CentOS 镜像

yum install screen wget -y

Debian / Ubuntu

apt install screen wget -y

安装 Screen 的好处就是如果断网也不要紧,会直接在服务器端继续跑安装进程的。

wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lnmp

然后我们复制上面的脚本即可安装 LNMP。如果我们需要安装 LAMP,那我们可以看用下面的脚本。

wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lamp

看到区别了吧。最后一个单词从原来的 LNMP 换成 LAMP即可。

2、LNMP 一键安装过程

这里我们通过图文的过程记录 LNMP 和 LAMP 一键脚本 WEB环境的安装过程。

LNMP选择数据库版本

我们开始需要选择数据库的版本,这里包括 MySQL和MariaDB数据库,正如上面我们提到的,如果你需要安装高版本数据库,需要内存支持和镜像的版本兼容。

LNMP设置数据库密码

然后我们需要设置数据库密码。一般我们较多的选择MySQL数据库,麦子也是用的这个数据库。超级管理员数据库密码还是很重要的,当然任何密码都需要严格。

LNMP安装InnoDB引擎

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

LNMP安装PHP版本

PHP版本选择安装,这里麦子个人建议选择7+版本。

LNMP安装内存缓存

然后看看是否需要安装内存优化,当然是需要安装的,默认 1 回车。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

如果我们安装的是LAMP 还需要提示我们安装一下管理员邮箱,其他都是类似的。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这个是安装LAMP才需要选择的 Apache版本。然后我们就是等待安装。

LNMP 安装成功

如果我们等待看到这样的界面,没有报错说明是安装成功的。这个时候,我们可以直接输入IP地址打开,可以看到LNMP一键包安装的默认界面提示成功安装。一般安装需要十几分钟,不过这个也需要根据不同的服务器性能有关系的,有的服务器性能差的,可能需要半个小时也是有的。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

如果有安装报错,我们需要检查报错是什么,检查是哪里问题。安装完毕之后,我们可以重启服务器后准备部署小工具添加站点。

第二、LNMP 添加和删除站点教程

既然我们已经在上面完成LNMP一键包WEB建站环境的安装。我们就可以添加站点建站。

1、添加站点

这里我们在添加站点之前,麦子建议我们先将域名解析到当前的VPS主机,这样如果后面需要安装免费SSL证书可以直接验证成功。

lnmp vhost add

输入安装添加站点脚本。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这里输入需要建站的域名。这里需要提示的 www 和 不带 www的是两个域名,如果都需要,你都需要添加。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这里我们可以添加第二个域名。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

然后我们设置默认的站点路径,一般直接回车。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

设置伪静态规则,默认自带常用的CMS程序伪静态规则。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

比如我们需要安装 WordPress程序的话,就在这里上面输入 y 回车后,在这里上面填wordpress,回车。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

询问是否需要安装日志,当然建议安装,如果后面需要检查报错问题可以查看。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

然后询问日志文件路径格式,回车即可。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这里继续添加数据库,我们是否需要数据库名和用户名一致,一般一致的,所以 y 回车。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

然后我们设置当前站点的数据库密码,稍微复杂一些。安全。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这里我们继续是否创建FTP,我们是否需要给当前站点独立FTP管理,如果我们需要就创建,不要直接 n 回车。一般服务器是我们自己用的话,就不要安装FTP,我们要知道多安装一个软件,负载和安全越大。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

我们是否需要给当前站点配置SSL证书。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

这里有2个选择,1 是自有证书,比如我们外部买的证书或者免费证书。如果 2,我们可以自动安装免费Let’s Encrypt证书。

LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

比如我们如果有购买外部证书,然后看到2个文件路径。我们将证书替换上面2个文件名,名字不要变。安装后,重启Nginx检查是否有报错,报错就不行。

最后,我们可以看到 Press any key to start create virtul host… 任意键后就可以创建成功。

2、删除站点

如果我们需要删除站点,可以输入命令

lnmp vhost del
LNMP / LAMP 一键安装包 - 免费快速Linux服务器部署 PHP MySQL Nginx/Apache

我们可以看到当前已有站点列表,输入对应域名即可删除。

这里我们需要记住,我们添加的站点目录在 home/wwwroot 对应的站点域名目录中。如果我们有需要挂载服务器或者自定义目录需要注意。

一般我们学会添加站点和删除站点,基本也就会差不多。

第三、LNMP常用软件工具安装脚本

LNMP 一键安装包,虽然不同于我们可能熟悉的宝塔面板这么图形化直观,我们LNMP需要学会简单的脚本安装小工具,包括我们需要安装软件工具的时候,也是通过系统自带的一些工具安装。这里整理我们常用可能需要安装的小工具软件版本。

1、eAccelerator

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

./addons.sh install eaccelerator #安装
./addons.sh uninstall eaccelerator #卸载

2、xcache

XCache 是一个国人开发的又快又稳定的PHP opcode缓存器。经过良好的测试并在大流量/高负载的生产机器上稳定运行,支持所有现行PHP分支的最新发布版本。

./addons.sh install xcache  #安装
./addons.sh uninstall xcache #卸载

3、memcached

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。

./addons.sh install memcached #安装
./addons.sh uninstall memcached #卸载

4、imageMagick

ImageMagick是一个用于查看、编辑位图文件以及进行图像格式转换的开放源代码软件套装。它可以读取、编辑超过100种图象格式。可用来替换GD库。

./addons.sh install imagemagick #安装
./addons.sh uninstall imagemagick #卸载

5、ionCube

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

./addons.sh install ionCube #安装
./addons.sh uninstall ionCube #卸载

6、Redis

Redis是一个开源、支持网络、基于内存、键值对存储数据库。

./addons.sh install redis #安装

7、opcache

./addons.sh install opcache  #安装
./addons.sh uninstall opcache #卸载

这个7项是常见的软件扩展,我们根据需要安装。

第四、LNMP 软件安装目录

有些时候我们需要修改某个文件参数的时候,不同的WEB脚本环境文件安装目录是不同的。LNMP这里整理常见的一些软件目录。

1、软件目录

  • 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/
  • 多PHP版本目录 : /usr/local/php5.5/ 其他版本前面5.5的版本号换成其他即可
  • 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/

2、文件目录

  • Nginx主配置(默认虚拟主机)文件:/usr/local/nginx/conf/nginx.conf
  • 添加的虚拟主机配置文件:/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 1.3及更高版本:/usr/local/pureftpd/etc/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

第五、LNMP 常见命令工具

我们在选择LNMP一键安装包部署LNMP或者LAMP的时候,还有一些小工具我们可能用的不多,但是关注一下以后可能也会用到。

1、LNMP状态命名

  • LNMP 1.2+状态管理: lnmp {start|stop|reload|restart|kill|status}
  • LNMP 1.2+各个程序状态管理: lnmp {nginx|mysql|mariadb|php-fpm|pureftpd} {start|stop|reload|restart|kill|status}
  • LNMP 1.1状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
  • Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
  • MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
  • Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
  • PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
  • PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
  • ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
  • Redis状态管理: /etc/init.d/redis {start|stop|restart|kill}

2、LAMP状态命令

  • LAMP 1.2+状态管理: lnmp {start|stop|reload|restart|kill|status}
  • LAMP 1.2+各个程序状态管理: lnmp {httpd|mysql|mariadb|pureftpd} {start|stop|reload|restart|kill|status}

3、部分升级命令

最后,我们有些软件版本陈旧,我们可能需要升级软件。

./upgrade.sh {nginx|mysql|mariadb|m2m|php|phpa|phpmyadmin}

4、其他命令

还有一些不常用的小工具命令,记录一下,以后有需要可以查看。

  • 可选1,(lnmp 1.4+版)执行:./install.sh mphp 在LNMP模式下可安装多PHP版本。
  • 可选2,(lnmp 1.4+版)执行:./install.sh nginx 单独只安装Nginx。
  • 可选3,(lnmp 1.4+版)执行:./install.sh db 单独只安装MySQL/MariaDB数据库。 (lnmp 1.2,1.3版)执行:./php5.2.17.sh 可安装一个不与LNMP冲突的PHP 5.2.17单独存在,使用时需要将nginx虚拟主机配置文件里的 php-cgi.sock 修改为 php-cgi52.sock。
  • 可选4,LNMP/LNMPA/LAMP卸载脚本,执行:./uninstall.sh 按提示输入当前模式序号,即可删除,1.4之前版本请自行备份好数据库,网站文件等不会删除。
  • 可选5,(以下几个脚本在安装包tools目录下)执行:./reset_mysql_root_password.sh 可重置MySQL/MariaDB的root密码。
  • 可选6,执行:./check502.sh 可检测php-fpm是否挂掉,502报错时重启,配合crontab使用。
  • 可选7,执行:./cut_nginx_logs.sh 日志切割脚本。
  • 可选8,执行:./remove_disable_function.sh 运行此脚本可删掉禁用函数。
  • 可选9,执行:./remove_open_basedir_restriction.sh 防跨目录移除工具。

第六、LNMP 一键包小结

麦子个人喜欢选择LNMP一键包建站的原因是轻便安全,虽然不及宝塔面板可视化视觉效果强,也不如部署方便。但是在我们如果希望搭建一个稳定的WEB 环境建站的,还是可以选择的。毕竟相比可视化面板,不需要特别大的资源配置要求,而且完全是基于原生态的服务器软件,兼容度和稳定性更好。

我们有需要LNMP一键包安装的朋友可以试试。

原创文章,作者:麦子,如若转载,请注明出处:https://www.immaizi.com/lnmp.html