VPS建站

新版LNMP一键安装包建站教程-一键安装Web环境自动签发SSL证书

LNMP一键安装包是一个国人开发的非常优秀的免费的LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。无需一个一个的输入命令,无需值守,编译安装优化编译参数,提高性能,解决不必要的软件间依赖,特别针对配置自动优化。

LNMP一键安装包支持自定义Nginx、PHP编译参数及网站和数据库目录、支持生成LetseEcrypt证书、LNMP模式支持多PHP版本、支持单独安装Nginx/MySQL/MariaDB/Pureftpd服务器,同时提供一些实用的辅助工具如:虚拟主机管理、FTP用户管理、Nginx、MySQL/MariaDB、PHP的升级、Redis/Xcache等的安装等。

本篇文章就来分享一下新版LNMP一键安装包建站教程,比较适合新手朋友们。更多的可查看:服务器控制面板榜单

  1. 宝塔面板安装与使用图文教程-VPS新手建站必备工具丰富插件功能强大
  2. Centmin Mod国外优秀的LNMP一键建站工具-优化ngx_pagespeed和WebP
  3. OpenLiteSpeed安装与使用-开源轻量高性能的建站面板-免费SSL,多PHP,LSCache

PS:更新记录.

1、想要一个个人的wiki,你可以试试Wiki.js开源免费程序:Wiki.js开源免费wiki程序安装与使用教程-界面简洁美观支持多种编辑器。2022.7.21

一、LNMP一键安装包

网站:

  1. https://lnmp.org/

1.1 安装前注意

LNMP一键安装包对于VPS的配置有一定的要求,高一级版本的PHP\Mysql等要求更大的内存和更高的操作系统版本。注意事项如下:

需要128MB以上内存(128MB小内存VPS,Xen需有SWAP,OpenVZ至少要有128MB以上的vSWAP或突发内存),注意小内存请勿使用64位系统!

安装MySQL 5.6或5.7及MariaDB 10必须1G以上内存,更高版本至少要2G内存!。

安装PHP 7及以上版本必须1G以上内存。

PHP 7.1.*以下版本不支持Ubuntu 19+、Debian 10等等非常新的Linux发行版!

MySQL 8.0.24以上版本升级或安装必须Debian 11+,Ubuntu 20.04+,Fedora 33+且必须使用1.8。

选购VPS主机可以参考:VPS主机排行榜单

1.2 一键安装命令

LNMP一键安装包直接使用以下命令就可以安装:

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

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
#如提示wget: command not found ,使用yum install wget 或 apt-get install wget 命令安装。

注意:LNMP一键安装包每年会发布新的更新包,上面的是1.9版本,建议大家及时到官网查看有没有最新版本。

目前提供了较多的MySQL、MariaDB版本和不安装数据库的选项,需要注意的是MySQL 5.6,5.7及MariaDB 10必须在1G以上内存的更高配置上才能选择!询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y。

输入要选择的PHP版本的序号,回车进入下一步,选择是否安装内存优化。可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车,直接回车为默认为不安装。

LNMP一键安装包编译过程需要大量的时间,所以需要耐心等待。如果网络掉线,可以重新连接S—S—H,再执行 screen -r lnmp 就会看到你的lnmp安装进程。

1.3 安装PHP组件

安装eAccelerator、xcache、memcached、imageMagick、ionCube、redis、opcache这几个PHP缓存、加速类的扩展。这些扩展和组件均采用./addons.sh进行安装。基本用法说明(提前进入lnmp解压后的目录):

./addons.sh {install|uninstall} {eaccelerator|xcache|memcached|opcache|redis|imagemagick|ioncube}

一般来说,我们建站常用的PHP组件有:memcached缓存、Redis缓存、imageMagick图像处理。安装命令如下:

#memcached
./addons.sh install memcached

#imageMagick
./addons.sh install imagemagick

#Redis
./addons.sh install redis

WordPress利用memcached和Redis缓存加速可以参考:WordPress使用Redis缓存加速WordPress页面缓存到Memcached实现优化加速

二、添加网站域名SSL

2.1 添加网站

现在你可以添加你的网站域名了。执行以下命令:lnmp vhost add

执行:lnmp vhost add 出现如下界面:

相关的说明如下:

1、绑定域名。填写你的域名。这里询问是否添加更多域名,直接再输入要绑定的域名,多个域名空格隔开,如不需要绑其他域名就直接回车。
(注:带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定)。
下面需要设置网站的目录

2、网站目录。网站目录不存在的话会创建目录。也可以输入已经存在的目录或要设置的目录(注意如要输入必须是全路径即以/开头的完整路径!!!)。不输入直接回车的话,采用默认目录:/home/wwwroot/域名

3、伪静态规则。伪静态可以使URL更加简洁也利于SEO,如程序支持并且需要设置伪静态的话,如启用输入 y ,不启用输入 n 回车(注意LNMPA或LAMP模式没有该选择项!)。
默认已经有了discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx伪静态配置文件,可以直接输入名称进行使用,如果网站是在二级目录则需要修改对应伪静态文件里的二级目录的名称。

4、是否启用pathinfo。只有极少数程序使用pathinfo,如基于CI框架的程序。常见的wordpress、discuz x等都不需要开启!!!不需要pathinfo的网站程序开启pathinfo会访问出现各种问题。

5、网站日志。这一步是设置日志,如启用日志输入 y ,不启用输入 n 回车。如果启用需要再输入要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log 回车确认后,会询问是否添加数据库和数据库用户。

6、网站数据库。如果需要添加数据库输入 y ,不添加数据库输入 n 回车。如果要添加,需要先验证MySQL的root密码(注:输入密码将不显示)
提示Enter database name: 后输入要创建的数据库名称,要创建的数据库用户名会和数据库同名,回车确认。
提示Please enter password for mysql user 数据库名: 后输入要设置的密码,回车确认。

2.2 免费SSL

添加SSL。如果需要添加输入 y ,不添加输入 n 回车。2 选项为使用免费SSL证书提供商Letsencrypt的证书,自动生成SSL证书等信息。

完成设置后LNMP一键安装包就成功添加网站完成了。

打开你的域名就可以看到正常访问了,显示403是因为还没有上传程序。

2.3 上传程序

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/
多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/

LNMP相关配置文件位置

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

你只需要将文件上传到你的网站目录下即可。

通过SFTP上传的文件默认的拥有者是root,我们用于建站的要求文件拥有者为www,上传网站后建议执行:chown www:www -R /path/to/dir 对网站目录进行权限设置,/path/to/dir替换为你网站目录。

2.4 Mysql数据库

打开你的IP地址,你会看到LNMP默认的首页了,这里有探针、PHP信息以及PHPMyadmin管理链接。

点击PHPMyadmin管理链接就可以进入到PHPMyadmin管理Mysql数据库了,这里你可以创建新的数据库。

三、总结

3.1 设置301跳转

LNMP一键安装包虽然支持自动设置Https,但是没有添加http跳转到Https的301转向功能,找到你的Nginx配置文件。

然后在80端口这一段添加以下代码,即当访问80端口时自动跳转到443端口。重启nginx生效。

return 301 https://$server_name$request_uri; 

3.2 网站定时备份

LNMP1.2/1.3+版本安装包目录下有一个tools目录,放有常用的备份脚本 backup.sh。备份脚本需要修改一下几个参数,需要配合crontab使用。默认备份文件保存3天,可以修改backup.sh里的-3day为你指定的天数。

Backup_Home="/home/backup/" #####备份文件存放目录
MySQL_Dump="/usr/local/mysql/bin/mysqldump" ####mysqldump路径,如果是mariadb替换/usr/local/mysql为/usr/local/mariadb
######~Set Directory you want to backup~######
Backup_Dir=("/home/wwwroot/wfou.com" "/home/wwwroot/wzfou.net") ##########要备份的目录,目录用双引号括起来,多个目录空格隔开,如前面的例子

######~Set MySQL Database you want to backup~######
Backup_Database=("lnmp" "wzfoumm") ########要备份的数据库,前面有例子

######~Set MySQL UserName and password~######
MYSQL_UserName='root' ####不用说了,MySQL root账号
MYSQL_PassWord='yourrootpassword' ##### MySQL root密码

######~Enable Ftp Backup~######
Enable_FTP=0 #####是否启用ftp备份,0 启用,非0 不启用
# 0: enable; 1: disable
######~Set FTP Information~###### ftp账号信息
FTP_Host='1.2.3.4'
FTP_Username='wzfou.com'
FTP_Password='yourftppassword'
FTP_Dir="backup" #########ftp服务器上存放备份的目录

#Values Setting END!

LNMP一键安装包目前只能是本地备份,这一点做得没有Oneinstack好,不能备份到腾讯云COS、阿里云OSS等云盘中。不过,你可以使用Linux VPS备份通用版脚本:Linux VPS主机自动备份网站和数据库脚本通用版-自动备份谷歌网盘,阿里云OSS等

3.3 面板还是一键包?

对于新手建站,建议选择宝塔面板。对于有一定Linux VPS使用基础的朋友,建议选择一键包,至于是选择LNMP还是Oneinstack一键包,两者区别不大,只是细节不同:LNMP和Oneinstack优缺点对比

文章出自:挖站否 https://wzfou.com/lnmp-yjb/, 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

文章更新于: %s = human-readable time difference 上午10:10

Qi

关于站长(Qi),2008年开始混迹于免费资源圈中,有幸结识了不少的草根站长。之后自己摸爬滚打潜心学习Web服务器、VPS、域名等,兴趣广泛,杂而不精,但愿将自己经验与心得分享出来与大家共勉。

查看评论