搭建WordPress网站有多种方法,但使用VPS搭建可以提供更好的性能。不过,VPS上搭建WordPress可能会面对更多技术性问题。本文将带你从零开始,在VPS上一步一步敲代码来搭建WordPress。
在开始之前,如果你想要更简单的方法,我建议你查看下面这篇教程,其中介绍了如何使用WordPress搭建个人博客。
VPS搭建Wordpress的前期准备
在开始搭建WordPress之前,你需要做好以下准备:
- 准备好一台VPS服务器。你可以参考我的购买和注册VPS的教程《阿里云服务器购买教程》。另外,请确保你的VPS使用的是Ubuntu22.04操作系统。
- 已经通过SSH连接到你的VPS。
- 已经在VPS上搭建好LAMP(Linux、Apache、MySQL和PHP)环境。这里有一份详细的《Ubuntu22.04搭建LAMP环境》教程。如果你在手动搭建LAMP环境时遇到问题,你可以参考我的《WordPress搭建个人博客》,这种搭建方法要简单很多。
- 确保你的域名已经解析到你的VPS。如果你还没有进行DNS解析设置,请查看我的Namesilo域名解析教程《Namesilo域名解析》。
第一步:创建MySQL数据库和用户
在安装WordPress之前,我们需要在MySQL中初始化一个空白数据库。请按以下步骤操作:
登录到MySQL:
通过SSH连接到你的VPS,输入以下命令以登录到MySQL,并输入MySQL密码(在LAMP环境安装时设置的密码)。登录成功后,你应该会看到MySQL的欢迎消息。
mysql -u root -p
创建数据库:
输入以下命令以创建一个名为wordpress的新数据库。
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
创建MySQL用户:
输入以下命令创建一个新的MySQL用户,这个示例创建了一个名为wpuser的用户,密码为wppassword,你需要替换为你自己的用户名和密码,并牢记,后面WordPress搭建会用到。
CREATE USER 'wpuser'@'%' IDENTIFIED WITH mysql_native_password BY 'wppassword';
授权用户:
输入以下命令授予用户对WordPress数据库的访问权限。
GRANT ALL ON wordpress.* TO 'wpuser'@'%';
刷新权限:
输入以下命令刷新MySQL权限。
FLUSH PRIVILEGES;
退出MySQL:
输入以下命令退出MySQL。
EXIT
上面的配置过程,如下图所示:
第二步:安装PHP插件并重启Apache
运行以下命令以安装必要的PHP插件并重启Apache服务器:
sudo apt update -y && sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y && sudo systemctl restart apache2
第三步:修改Apache配置
运行以下命令以修改Apache配置文件,确保WordPress可以正常运行。请将”my_domain”替换为你的域名。
sudo nano /etc/apache2/sites-available/my_domain.conf
比如我这里是:
sudo nano /etc/apache2/sites-available/wumakaifa.com.conf
在打开的文件中,粘贴以下配置,并将”my_domain”和”www.my_domain”替换为你的域名,比如我这里替换成wumakaifa.com和www.wumakaifa.com:
<VirtualHost *:80>
ServerName my_domain
ServerAlias www.my_domain
ServerAdmin webmaster@localhost
DocumentRoot /var/www/wordpress
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/wordpress/>
AllowOverride All
</Directory>
</VirtualHost>
保存文件并退出文本编辑器,Ctrl+x,接着按Y,然后按Enter回车键退出。然后启用新的网站配置,其中”my_domain”需要替换为你的域名:
sudo a2ensite my_domain
最后,禁用默认网站,并重启Apache:
sudo a2dissite 000-default && sudo a2enmod rewrite && sudo a2enmod rewrite && sudo apache2ctl configtest && sudo systemctl restart apache2
第四步:下载WordPress
运行以下命令以下载WordPress文件:
cd /tmp && curl -O https://wordpress.org/latest.tar.gz && tar xzvf latest.tar.gz && touch /tmp/wordpress/.htaccess && cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php && mkdir /tmp/wordpress/wp-content/upgrade && sudo cp -a /tmp/wordpress/. /var/www/wordpress && sudo chown -R www-data:www-data /var/www/wordpress && sudo find /var/www/wordpress/ -type d -exec chmod 750 {} ; && sudo find /var/www/wordpress/ -type f -exec chmod 640 {} ;
WordPress保存在你的VPS中的/var/www/wordpress路径下。
第五步:修改WordPress配置
运行以下命令获取一些随机字符串:
cd /var/www/wordpress && curl -s https://api.wordpress.org/secret-key/1.1/salt/
复制生成的随机字符串,然后运行以下命令编辑WordPress配置文件,删除原来的字符串,并将随机字符串替换到相应的位置。
sudo nano /var/www/wordpress/wp-config.php
找到配置文件中的数据库用户名、密码和数据库名称,根据前面创建的MySQL用户和数据库信息进行相应的修改(比如我这里数据库是wordpress,用户名是wpuser,密码是wppassword) 。此外,还需要添加一个FS_METHOD:
define('FS_METHOD', 'direct');
保存文件并退出。
第六步:测试网站是否能够访问
在浏览器中输入你的域名,检查网站是否可以正常访问。例如:
http://my_domain
如果网站可以正常访问,表明你上面的操作都配置成功了。但如果你的网站无法正常打开,可能出现了一些问题,有可能是你在WordPress文件或Apache设置上出现了错误。这时候,你可能需要重新检查一遍。如果你发现自己无法手动搭建好网站,不要担心,我建议你看一下我的一键安装WordPress教程《WordPress搭建个人博客》 。
接下来我们需要配置SSL来加强安全性。
第七步:安装SSL证书
返回到VPS的控制台,首先我们要安装Certbot:
sudo apt install certbot python3-certbot-apache -y
接下来,我们需要调整防火墙规则:
sudo ufw allow 'Apache Full' && sudo ufw delete allow 'Apache'
然后,启动Certbot来获取SSL证书:
sudo certbot --apache
Certbot会询问你的电子邮件地址,请确保输入你自己的邮箱地址。
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
(Enter 'c' to cancel): your_email@126.com
接下来,你会被要求同意服务条款,输入”Y”表示同意。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
然后,它会问你是否愿意分享你的邮箱地址,你可以选择”N”不分享。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N
接下来,它会问你要为哪些域名启用HTTPS,你可以直接按回车键,表示默认全选。
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: wumakaifa.com
2: www.wumakaifa.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel):
打印“Congratulations! You have successfully enabled HTTPS on”,表明你的SSL证书就按照成功了。
Deploying certificate
Successfully deployed certificate for wumakaifa.com to /etc/apache2/sites-available/wumakaifa.com-le-ssl.conf
Successfully deployed certificate for www.wumakaifa.com to /etc/apache2/sites-available/wumakaifa.com-le-ssl.conf
Congratulations! You have successfully enabled HTTPS on https://wumakaifa.com and https://www.wumakaifa.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
* Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
* Donating to EFF: https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
至此,你的网站现在应该可以通过HTTPS访问了。
第八步:进入WordPress
接下来,我们可以进入WordPress。选择中文语言,然后设置WordPress后台登录的用户名和密码。
请牢记设置的用户名和密码,后续你需要使用它登录WordPress后台管理界面。
完成初始化后,你就可以进入WordPress的后台管理界面了。
写在最后
现在,你已经成功地使用VPS搭建了WordPress网站。接下来,你可以开始进行网站的装修和其他设置。我建议首先安装webp插件和SEO插件。如果你在手动安装过程中遇到问题,可以看看我的傻瓜式教程《WordPress搭建个人博客》。如果你已经安装好了WordPress,但不知道如何设置主题和插件,也可以参考我的傻瓜式教程,因为它包含了所有你需要了解的早期内容。祝你搭建一个成功的WordPress网站!