用VPS搭建个人网站从零开始 WordPress部署完整流程

发布于
1

我搭第一个网站的时候花了一整天——不是因为操作复杂,是教程太多了,每一篇说的都是”另一种方法”。装Nginx有人说用yum有人说编译、装PHP有人说7.4有人说8.2、数据库有人用MySQL有人用MariaDB。选了错的版本后面踩了一串坑。这篇不讲选择,给一条确定的路径,你跟着走就行。

前提条件:一台VPS(建议2核2G以上,系统选Ubuntu 22.04或Debian 12)、一个已经解析到VPS IP的域名、SSH能连上。

先更新系统并把基础工具装上。连上SSH后跑 apt update && apt upgrade -y,等几分钟系统更新完。接着 apt install -y curl wget git unzip,这几个工具后面都会用到。

装Nginx。apt install -y nginx,装完 systemctl start nginx && systemctl enable nginx 启动并设为开机自启。浏览器访问你的VPS IP地址,看到Nginx的欢迎页面就说明装好了。如果访问不了——检查防火墙有没有放行80端口(ufw allow 80/tcp),或者云服务商的安全组有没有放行80端口(在云控制台的安全组里添加入方向规则:协议TCP、端口80、来源0.0.0.0/0)。很多新人卡在这一步,不是Nginx没装好,是安全组没放行。

装MySQL。apt install -y mysql-server,装完跑 mysql_secure_installation 做安全初始化——设置root密码、删除匿名用户、禁止远程root登录。然后进MySQL创建WordPress用的数据库:mysql -u root -p,进去之后执行 CREATE DATABASE wordpress; CREATE USER ‘wpuser’@’localhost’ IDENTIFIED BY ‘你的密码’; GRANT ALL PRIVILEGES ON wordpress.* TO ‘wpuser’@’localhost’; FLUSH PRIVILEGES; 退出MySQL。

装PHP。Ubuntu 22.04默认源里是PHP 8.1,够用。apt install -y php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip,装完改一下PHP-FPM配置,让PHP处理上传文件时不会因为文件太大报错——编辑 /etc/php/8.1/fpm/php.ini,把 upload_max_filesize 和 post_max_size 改成64M。systemctl restart php8.1-fpm 让配置生效。

配置Nginx和PHP对接。在 /etc/nginx/sites-available/ 下新建一个配置文件(比如 wordpress),写入Nginx的PHP转发规则。核心就几行:server块里指定域名、root指向网站文件目录、location ~ .php$ 块里把请求转发给PHP-FPM(fastcgi_pass unix:/var/run/php/php8.1-fpm.sock)。ln -s 软链接到 sites-enabled 目录,nginx -t 测试配置语法,systemctl reload nginx 让配置生效。这个时候在网站根目录放一个 index.php 文件写 phpinfo(),浏览器访问域名能看到PHP信息页面就说明Nginx和PHP已经对接成功了。

安装WordPress。wget下载最新的WordPress压缩包、unzip解压到网站根目录、chown 把文件归属改给www-data。浏览器访问你的域名,进入WordPress的安装向导——填数据库名、用户名、密码、数据库主机(localhost)——下一步设置站点标题和管理员账号——安装完成。从SSH连上VPS到WordPress后台能打开,按这个流程走大概半小时到四十分钟。

装SSL证书。用Let’s Encrypt的免费证书,装certbot:apt install -y certbot python3-certbot-nginx。然后 certbot –nginx -d 你的域名,按提示输入邮箱、同意协议,certbot自动去申请证书并在Nginx配置里加上HTTPS。以后证书到期前certbot会自动续期,不用手动管。

一条完整路径走下来,你的网站就上线了。后面的优化——装缓存插件、配CDN、做数据库定期备份——都是锦上添花,不影响网站能不能用。

VPS本身的选择上,建站用国内节点体验最好(延迟低、访问快)。雨云的宁波和深圳节点对国内访问做了优化,KVM虚拟化按2核2G5M的配置用优惠码 admin01 五折下来月付几十块。7天无理由退款最多3次——装完环境觉得不满意退掉换配置,对第一次建站的人来说这个试错空间很实在。

几个装好之后容易忘的事

配好了网站别关SSH窗口就以为完事了。做三个收尾操作:把WordPress后台地址 /wp-admin 加上访问限制(Nginx里加个allow只允许你本地IP访问wp-admin目录,或者装个WordPress安全插件做二次认证)。开个自动备份——mysqldump导出数据库+cron定时任务每天备份到对象存储或异地服务器。把VPS商家的监控告警打开——CPU和内存持续跑满的时候收到通知,不至于网站挂了几天都不知道。

常见问题

Nginx欢迎页能访问但WordPress安装页打不开?检查PHP-FPM是不是在运行:systemctl status php8.1-fpm。检查Nginx配置里 fastcgi_pass 路径是否和PHP-FPM的socket路径一致。检查网站根目录权限是否给了www-data用户。

安装WordPress时提示”无法连接数据库”?检查MySQL在不在运行:systemctl status mysql。检查数据库用户名和密码有没有输错(区分大小写)。检查数据库主机填的是不是 localhost——VPS上WordPress和MySQL在同一台机器上就填localhost,127.0.0.1也行。

网站装好了但访问很慢?先排查是不是VPS带宽被占满或者配置太低。2核2G以上的配置跑WordPress一般不会有性能问题。装个WP Super Cache插件把动态页面转静态,访问速度能有明显提升。如果内容和图片很多,后续可以考虑加CDN加速静态资源的加载。

常见问题(FAQ)

Nginx欢迎页能访问但WordPress安装页打不开?
检查PHP-FPM是否运行:systemctl status php8.1-fpm。检查Nginx配置里fastcgi_pass路径与PHP-FPM的socket路径一致。检查网站根目录权限是否给了www-data用户。
安装WordPress提示无法连接数据库?
检查MySQL是否运行:systemctl status mysql。检查数据库用户名密码有无输错(区分大小写)。数据库主机填localhost,VPS上WP和MySQL同机就填localhost。
网站装好了但访问很慢?
先排查是不是VPS带宽被占满或配置太低。2核2G以上跑WP一般没问题。装WP Super Cache插件把动态页面转静态,速度明显提升。内容多可后续加CDN加速静态资源。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600