用 lnmp环境 + Caddy2 快速部署php动、静态网站
Caddy2 是一个现代、高性能、自动 HTTPS 的 Web 服务器,比 Nginx 更简单,特别适合快速部署 PHP 网站。
一、lnmp环境搭建
1.安装要求:
参考: lnmp环境搭建
CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Aliyun/Amazon/Mint Linux发行版
需要5GB以上可用空间,MySQL 5.7,MariaDB 10至少9GB剩余空间,MySQL8.0最新版至少25GB以上,如空间不够且是x86或x86_64架构MySQL可以选择Generic Binaries安装。
需要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发行版上安装旧的PHP/MySQL版本,同理不要在旧的Linux发行版上安装非常新的PHP/MySQL版本。
Linux下区分大小写,输入命令时请注意!
如有通过yum或apt-get安装的MySQL/MariaDB请自行备份数据等相关文件!
CentOS 5、6、8,Debian 6、7、8或更低版本官网已经结束支持无法直接使用,需自行更换vault或archive源!
CentOS 6、8请用lnmp 1.9+版本进行安装!
Ubuntu 18+,Debian 9+,Mint 19+,Deepin 15.7+及所有新的Linux发行版只能使用1.7+进行安装!
PHP 7.1.*以下版本不支持Ubuntu 19+、Debian 10+等等非常新的Linux发行版!
阿里云Ubuntu 14.04和22.04系统模版有问题不要用!!!要用的话论坛找解决方法
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+,CentOS 9等gcc 10+的版本且必须使用1.9+,不满足要求请选择(Generic Binaries)二进制方式!!!
MariaDB 10.*以上版本升级或安装必须CentOS 8+,Debian 10+,Ubuntu 18.04+等cmake版本高于3的系统或自行升级cmake!!!不满足要求使用lnmp 2.0选择(Generic Binaries)二进制方式。
2、更新系统
sudo apt update && sudo apt upgrade -y
3.安装LNMP稳定版
如需要安装LNMPA或LAMP,将./install.sh 后面的参数lnmp替换为lnmpa或lamp即可。同时也支持单独安装Nginx或数据库,命令为 ./install.sh nginx 或 ./install.sh db。
wget https://soft.lnmp.com/lnmp/lnmp2.2.tar.gz -O lnmp2.2.tar.gz && tar zxf lnmp2.2.tar.gz && cd lnmp2.2 && ./install.sh lnmp
输入对应MySQL或MariaDB版本前面的序号,回车进入下一步.
如果选择MySQL/MariaDB如果有对应架构的二进制包会提示:”Using Generic Binaries [y/n]:“ 这一步是提示是否使用二进制安装,输入 y 为使用二进制安装,输入 n 为使用源码编译安装。如果没有提示说明当前架构没有对应的二进制安装包。
设置MySQL的root密码(为了安全不输入直接回车将会设置为lnmp.org#随机数字)如果输入有错误需要删除时,可以按住Ctrl再按Backspace键进行删除(个别情况下是只需按Backspace键)。
询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,(MySQL 5.7+版本无法关闭InnoDB),输入完成,回车进入下一步。
注意:选择PHP 7+版本时需要自行确认PHP版本是否与自己的程序兼容。
输入要选择的PHP版本的序号,回车进入下一步,选择是否安装内存优化:
一般选择不优化
安装完成
如果显示Nginx: OK,MySQL: OK,PHP: OK
卸载lnmp一键安装包
在lnmp安装包目录下执行:
./uninstall.sh
按提示选择当前环境类型,回车确认,会删除lnmp相关程序组件,网站文件会保留,数据库目录会另外备份到 /root 目录下,如有另外需要保存的文件请在卸载前备份。
二、Caddy2的安装
1、必要的软件包1
sudo apt install -y debian-keyring debian-archive-keyring curl
2、必要的软件包2
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
3、Caddy的安全密钥
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
4、下载 Caddy密钥文件
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
5、更新软件包列表
sudo apt update
6、升级或安装Caddy2
sudo apt install -y caddy
三、创建网站目录,并上传静态html或动态php文件【网站文件在 home/html/web/】
网站1
sudo mkdir -p /home/html/web/web1
sudo chown -R www-data:www-data /home/html/web/web1
sudo chmod -R 755 /home/html/web/web1
网站2
sudo mkdir -p /home/html/web/web2
sudo chown -R www-data:www-data /home/html/web/web2
sudo chmod -R 755 /home/html/web/web2
网站3
sudo mkdir -p /home/html/web/web3
sudo chown -R www-data:www-data /home/html/web/web3
sudo chmod -R 755 /home/html/web/web3
网站4
sudo mkdir -p /home/html/web/web4
sudo chown -R www-data:www-data /home/html/web/web4
sudo chmod -R 755 /home/html/web/web4
网站5
sudo mkdir -p /home/html/web/web5
sudo chown -R www-data:www-data /home/html/web/web5
sudo chmod -R 755 /home/html/web/web5
网站6
sudo mkdir -p /home/html/web/web6
sudo chown -R www-data:www-data /home/html/web/web6
sudo chmod -R 755 /home/html/web/web6
可以类似的创建更多网站
四、配置 Caddy2 支持 PHP【以下面网站示例,多个网站类似配置,可以不开cf小黃云】
example1.com {
root * /home/html/web/web1 #安装路径,备注什么网站
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
example2.com {
root * /home/html/web/web2 #安装路径,备注什么网站
php_fastcgi unix//run/php/php-fpm.sock
file_server
}
example3.com {
reverse_proxy 127.0.0.1:8880 #反代配置,这里输入你想反代的服务器IP和端口
encode gzip
}
example4.com {
redir https://naiyous.com{uri} #重定向配置,这里输入你想设置的重定向
}
五、启动并启用 Caddy2.
重启Caddy2并设置开机自启
sudo systemctl restart caddy
sudo systemctl enable caddy
其它命令
1、Caddy2开机自启
systemctl enable caddy
2、重启Caddy2
systemctl restart caddy
3、停止Caddy2
systemctl stop caddy
评论 (0)