https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-22-04 (基础,教你如何安装和配置LEMP,注意在数据库编写完之后会遇到)
https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-lemp-on-ubuntu-22-04 (实战,准备号上面的东西后,回头再看这一篇,并开始着手安装wordpress,这里还有以一个bug,其导致在安装完wordpress之后不能正常访问www.your_domain/wordpress (Error:Your PHP installation appears to be missing the MySQL extension which is required by WordPress) 这是因为在基础和实战两个教程中,你有可能安装php8.1并不是完备的,不知道基于什么原因,在增加安装额外php项目时,里面漏了php-pdo-mysql没有安装,如何检查这个呢?有个办法就是查看www.your_domain/info.php里面,你会看到PD0的drive为空。这会导致Nginx无法连接到php的驱动器,所以在安装php8.1的指令里面要加上安装php-pdo-mysql的指令:
sudo apt-get install -y php-pdo-mysql
以上两篇要合起来看和用,而服务器安装务必要完备,不然会出现很多奇怪的问题,另外在你跟着执行的时候,最好是看完上下文在一步一步执行到底,因为其中很多是在当时步骤下试行一步用来验证,最终又会删除掉的,如果你还留着试行的设置,势必后面会有很多麻烦,比如index.html和php.ini的内容,当然如果我没有试错也不会有这个忠告,而又这个忠告又感觉学到了点什么。
在搞定https(ssl)之后不要忘了两件事:在VPS安全管理里面放行443端口;在ufw里面放行https服务
ubuntu@SGaws2:~$ sudo ufw allow 'Nginx HTTPS' Rule added Rule added (v6) ubuntu@SGaws2:~$ sudo ufw status Status: active To Action From -- ------ ---- Nginx HTTP ALLOW Anywhere OpenSSH ALLOW Anywhere Nginx HTTPS ALLOW Anywhere Nginx HTTP (v6) ALLOW Anywhere (v6) OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTPS (v6) ALLOW Anywhere (v6)