用 WordPress 搭建个人网站

2020-08-24 WP排行榜

WordPress 是世界上最流行的博客系统之一,并且功能强大,使用简单,插件丰富。

著名的网购产品推荐网站「什么值得买」最初就是基于 WordPress 进行搭建的。

这篇文章,就简单记录一下自己的网站是怎么 Hello World 的。


| 一、搭建前的准备

• 一个域名

• 一个服务器

• 配置 DNS

为了省心,服务器和域名我都在腾讯云上购买了,因为要求不高,所以只花了百来块钱。通过 DNSPod 添加 A 记录,将域名指向服务器所在 IP。

| 二、手动搭建 LNMP 环境(CentOS 7)

LNMP 是 Linux、Nginx、MariaDB 和 PHP 的缩写,这个组合是最常见的 Web 服务器的运行环境之一。而 WordPress 就是基于 LNMP 来搭建的。

搭建过程可参考腾讯云的技术文档 《手动搭建 LNMP 环境(CentOS 7)》:

https://cloud.tencent.com/document/product/213/38056

| 三、手动搭建 WordPress 个人站点(Linux)

在上述两步完成后接下来就可以开始搭建 WordPress 个人站点了。

搭建过程可参考腾讯云的技术文档 《手动搭建 WordPress 个人站点(Linux)》:

https://cloud.tencent.com/document/product/213/8044

我自己使用的 WordPress 版本与技术文档中提及的有所不同。

 

四、为 WordPress 配置个人域名访问

1. 去到 Nginx 默认所在的文件夹,修改配置文件 nginx.conf,找到参数server_name 将 IP 改为自己的域名,使用命令 nginx -s -load 重载 Nginx。

2. 在 WordPress 的管理后台,按路径“设置–常规”,将 WordPress 地址(URL)和 站点地址(URL)都改为 http://example.com/wordpress ,其中 wordpress 为 WordPress 安装目录(每个人命名可能会不同,按实际情况填写,下同)然后保存更改。

完成上述两个步骤后就可以通过 http://example.com/wordpress  来访问网站了。

 

五、将 WordPress 设置为网站根目录

那我想通过 http://example.com/ 也可以访问网站,那么就需要将 WordPress 设置为网站的根目录。可参考 WordPress 官方文档《Giving WordPress Its Own Directory》:

Giving WordPress Its Own Directory

需要做以下这三步:

1.  在网站的根目录创建 .htaccess 文件,将下面的内容写入该文件(按实际情况修改 example.com 和 my_subdir)

<IfModule mod_rewrite.c>RewriteEngine onRewriteCond %{HTTP_HOST} ^(www.)?example.com$RewriteCond %{REQUEST_URI} !^/my_subdir/RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ /my_subdir/$1RewriteCond %{HTTP_HOST} ^(www.)?example.com$RewriteRule ^(/)?$ my_subdir/index.php [L]</IfModule>

2. 将 WordPress 文件夹中的 index.php 文件拷贝到网站根目录,同时将文件里的

require(dirname(__FILE__).‘/wp-blog-header.php’)

改为

require(dirname(__FILE__).‘/wordpress/wp-blog-header.php’)

3. 在 WordPress 的管理后台,按路径“设置–常规”,将站点地址(URL)改为 http://example.com

完成上述三个步骤后就可以通过 http://example.com 来访问网站了。

| 六、给网站配置HTTPS访问

1. 申请 SSL 证书

腾讯云可以申请域名型免费版(DV)

2. 开启80,443端口

3. 证书安装及设置 HTTP 强制跳转 HTTPS

可参考腾讯云技术文档 《Nginx 服务器证书安装》

https://cloud.tencent.com/document/product/400/35244:

1) 在腾讯云 SSL 证书管理控制台 中下载并解压缩 www.domain.com 证书文件包到本地目录,解压后得到 1_www.domain.com_bundle.crt 证书文件和 2_www.domain.com.key 私钥文件。

2) 将证书放到 Nginx 默认的文件夹下,编辑 nginx.conf 文件,对照原 server 配置进行修改:

#HTTPS访问设置server {listen 443 ssl;#填写绑定证书的域名server_name www.domain.com;#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。root /var/www/www.domain.com;index index.html index.htm;#证书文件名称ssl_certificate 1_www.domain.com_bundle.crt;#私钥文件名称ssl_certificate_key 2_www.domain.com.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;location / {index index.html index.htm;}}
#HTTP强制跳转HTTPSserver {listen 80;#填写绑定证书的域名server_name www.domain.com;#把http的域名请求转成httpsreturn 301 https://$host$request_uri;}

3) 修改后用 nginx -t 验证配置文件问题,没有问题后用 nginx -s reload重载nginx

4. 设置页面

在 WordPress 的管理后台,按路径“设置–常规”,将站点地址(URL)改为 https://example.com ,同时将 WordPress 地址(URL)改为 https://example.com/example.com/wordpress

完成上述四个步骤后就完成了证书安装及设置 HTTP 强制跳转 HTTPS 。

| 七、主题设置

主题设置有两种方法,一种是直接通过 WordPress 自带的主题商城 访问安装,另外一种是通过上传主题包来安装。

1. WordPress 自带的主题商城安装

在选好主题后准备安装时会遇到一个问题 — —“要执行请求操作,wordpress 需要访问您网页服务器的权限”。

通过编辑 /etc/php-fpm.d/www.conf 可以解决,将 user 和 group 都修改为 nginx:

; RPM: apache Choosed to be able to access some dir as httpduser = nginx; RPM: Keep a group allowed to write in log dir.group = nginx

然后用 chmod -R 755 /usr/share/nginx/html/wordpress 和 chown -R nginx.root /usr/share/nginx/html/wordpress 来对网站目录文件夹进行授权。

2. 本地上传主题安装

会遇到以下几个问题:

1) “413 Request Entity Too Large”

这是 Nginx 和 PHP 对文件上传大小有限所导致的,所以可以通过修改相关配置文件来解决。

在 nginx.conf 中添加一行代码 client_max_body_size 20M;,

可以选择在 http{ } 中设置:client_max_body_size 20m;

也可以选择在 server{ } 中设置:client_max_body_size 20m;

还可以选择在 location{ } 中设置:client_max_body_size 20m;

三者有所区别:

设置到 http{} 内,控制全局 nginx 所有请求报文大小

设置到 server{} 内,控制该 server 的所有请求报文大小

设置到 location{} 内,控制满足该路由规则的请求报文大小

同时记得修改 php.ini 内的上传限制:upload_max_filesize = 20M 。通过命令 php –ini 可以确定 php.ini 文件的位置。修改完成后用命令systemctl reload php-fpm 和 systemctl restart php-fpm 重启和重载php-fpm

完成上述操作后重载 Nginx 。

2) “WordPress 没有上级目录的写权限”

通过命令 chmod -R 777 wordpress/wp-content 可以解决该问题

3) “要执行请求操作,WordPress 需要访问您网页服务器的权限”

解决方法与上述 1. WordPress 自带的主题商城安装 相同。

| 最后

现在开始,可以愉快地折腾自己的网站啦。



助你挑选高品质的WordPress主题
WP排行榜官方QQ:1227810339
主营:网站建设,SEO推广服务!

wordpress托管建站