一、添加网站
基本命令:
lnmp vhost {add|list|del}
先把你的域名解析到你的VPS主机的IP上,然后执行添加网站命令:lnmp vhost add
,填写你的域名、设置网站的目录、伪静态、设置日志、数据库等。操作说明如下:
root@ecs-WYt6B:~/lnmp1.7# lnmp vhost add
+-------------------------------------------+
| Manager for LNMP, Written by Licess |
+-------------------------------------------+
| https://lnmp.org |
+-------------------------------------------+
Please enter domain(example: www.lnmp.org): lvps.wzfou.me
Your domain: lvps.wzfou.me #绑定你的域名
Enter more domain name(example: lnmp.org *.lnmp.org): #是否有其它的域名,没有话直接回车
Please enter the directory for the domain: lvps.wzfou.me
Default directory: /home/wwwroot/lvps.wzfou.me: #网站根目录
Virtual Host Directory: /home/wwwroot/lvps.wzfou.me
Allow Rewrite rule? (y/n) y #是否添加重写规则
Please enter the rewrite of programme,
wordpress,discuzx,typecho,thinkphp,laravel,codeigniter,yii2 rewrite was exist.
(Default rewrite: other): wordpress
You choose rewrite: wordpress
Enable PHP Pathinfo? (y/n) n #一般是否
Disable pathinfo.
Allow access log? (y/n) y #是否开启网站日志
Enter access log filename(Default:lvps.wzfou.me.log):
You access log filename: lvps.wzfou.me.log
Create database and MySQL user with same name (y/n) y #是否添加数据库
Enter current root password of Database (Password will not shown):
OK, MySQL root password correct.
Enter database name: wzfou
Your will create a database and MySQL user with same name: wzfou
Please enter password for mysql user wzfou: wzfou.com
Your password: wzfou.com
Add SSL Certificate (y/n) y
1: Use your own SSL Certificate and Key
2: Use Let's Encrypt to create SSL Certificate and Key
Enter 1 or 2: 2
It will be processed automatically.
Press any key to start create virtul host...
如下图,成功添加了网站,并且开启了SSL证书。
![](http://101.200.37.218/wp-content/uploads/2022/02/33.jpg)
二、301跳转
LNMP一键建站工具没有设置301自动将Http跳转到Https,我们还需要进一步设置,找到你的域名的nginx配置文件,编辑添加以下代码,然后重启nginx生效。
return 301 https://server_namerequest_uri;
![](http://101.200.37.218/wp-content/uploads/2022/02/34.jpg)
三、网站自动备份
LNMP1.2/1.3+版本安装包目录下有一个tools目录,放有常用的备份脚本 backup.sh,nginx日志切割脚本 cut_nginx_logs.sh,SSH防护安装脚本denyhosts.sh 和 fail2ban.sh,MySQL/MariaDB root密码重装工具 reset_mysql_root_password.sh及PHP函数辅助删除工具 remove_disable_function.sh。 这些工具可以在使用LNMP提供一些很有用的安全防护设置。
1、 本地备份
LNMP一键建站脚本只有本地备份,脚本为:backup.sh,备份脚本需要修改一下几个参数。
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/vpser.net" "/home/wwwroot/lnmp.org") ##########要备份的目录,目录用双引号括起来,多个目录空格隔开,如前面的例子
######~Set MySQL Database you want to backup~######
Backup_Database=("lnmp" "vpser") ########要备份的数据库,前面有例子
######~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='vpser.net'
FTP_Password='yourftppassword'
FTP_Dir="backup" #########ftp服务器上存放备份的目录
#Values Setting END!
默认备份文件保存3天,可以修改backup.sh里的-3day为你指定的天数。
2、定时备份
为了达到自动备份的效果,需要配合crontab使用,有关于Linux定时任务更多的设置说明请参考:Crontab命令定时任务操作指南。
#添加定时脚本
crontab -e
#编辑定时脚本,然后添加:
0 1 * * * /root/lnmp1.7/tools/backup.sh
#设置每天凌晨1点执行一次,至此自动备份就成功了。
3、同步到网盘
这一步我们主要是利用了clone工具了,有关于clone的介绍与使用请参考:VPS挂载国内外网盘实现免费扩容工具:Rclone,COS-Fuse和OSSFS。
在本地根目录下新建cmd目录,然后cd cmd
,新建一个sh文件。
vim vpsback.sh
复制以下命令:
#!/bin/bash
/root/lnmp1.7/tools/backup.sh
/usr/bin/rclone copy --update --verbose --transfers 30 --checkers 8 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "/backup" "wzfoumi:wzfoumima"
echo "BACKUP DATE:" $(date +"%Y-%m-%d %H:%M:%S") >> /var/log/backup.log
说明:
第一句是执行LNMP备份。
第二句是利用rclone copy命令,将指定目录/backup下新增加的文件,同步到Google网盘中,”wzfoumi:wzfoumima”是指名称为wzfoumi的rclone,wzfoumima是谷歌网盘中的文件夹。
第三句是输出日志,即表示执行了一次备份命令。
赋予执行权限:
chmod +x vpsback.sh
先测试一下从是否可以正确运行,我们可以看到本地文件夹已经有打包过来的文件。同时,可以看到网盘中已经有了同步过来的文件了。
![](http://101.200.37.218/wp-content/uploads/2022/02/21.jpg)
添加定时任务,让脚本每天执行一次。
0 2 * * * /cmd/vpsbackup.sh > /dev/null 2>&1 &