WordPress 是全球最受欢迎的开源博客和 CMS 平台,为当今互联网上四分之一的网站提供支持。 它基于 PHP 和 MySQL,包含大量可以通过免费和高级插件和主题扩展的功能。 WordPress 是创建在线商店,网站或博客的最简单方式。
本教程介绍如何在 CentOS 7 上安装 WordPress。这是一个相当简单的过程,只需不到十分钟即可完成。
我们将介绍如何在 CentOS 7 上使用带有 Nginx 的 LNMP 软件环境作为 Web 服务器情况下安装Wordpress。
准备
开始前请确保满足以下条件:
- 让域名指向您的服务器公共IP地址. 本教程中,我们使用域名
linux265.com
示范。 - 具有sudo权限的用户身份登录。
- 已安装LNMP(Linux+Nginx+Mysql/MariaDB+PHP)软件环境,如果没有安装可以参考该教程进行安装。
- 您已为您的域名安装了SSL证书。 您可以按照这里生成免费的Let's加密SSL证书。
步骤01、创建Wordpress安装需要的MySQL数据库和用户
Wordpress目前只支持MySQL数据库引擎,WordPress使用MySQL来管理和存储站点和用户信息等相关信息。在已经安装Mysql基础上,这里我们需要为Wordpress创建一个数据库和用户。
如果MySQL配置为使用auth_socket
身份验证插件(默认),您可以使用sudo
命令登录MySQL管理帐户:
sudo mysql
如果使用MySQL root帐户的密码认证方式,用以下命令登录:
mysql -u root -p
系统会提示您输入为MySQL root帐户设置的密码。
登录MySQL成功后,我们通过以下命令创建一个名为wordpress
的数据库,当然你可以根据实际情况创建一个你喜欢的名称。
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
接下来我们创建一个用于访问linux265数据库的MySQL用户。从管理和安全角度来看,建议创建单功能数据库和帐户。我们使用wpuser
作为该示例数据库的账号,实际创建中你可以修改为你自己需要的名称。
GRANT ALL ON wordpress.* TO 'wpuser'@'localhost' IDENTIFIED BY 'password';
注意:这里的
password
请替换为你自己设定的具体密码,安全考虑建议是强密码(包含字符数字大小写)。
刷新权限,以便MySQL的当前实例知道我们最近做出的更改使其生效。
FLUSH PRIVILEGES;
输入exit
即可退出当前MySQL会话。
exit
步骤2、安装Wordpress需要的PHP扩展
在安装LNMP软件环境时,默认只需要一组非常小的扩展,以便让PHP与MySQL通信。WordPress及其许多插件利用了额外的一些PHP扩展,所以需要安装保证更好的使用Wordpress。
我们可以通过输入以下命令下载并安装一些最流行的PHP扩展以与WordPress一起使用,命令如下:
sudo yum install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip
安装完成后,重启PHP-FPM进程,以便正在运行的PHP处理器可以利用新安装的扩展功能。
sudo systemctl restart php-fpm
步骤3、配置Nginx
该步骤我们我们会对nginx做一些配置,以便nginx能正常处理访问wordpress的请求。通常站点的配置文件我们会放在/etc/nginx/conf.d/
目录中并以域名方式命名,例如linux265.com.conf
。该目录中的conf文件会自动被nginx主配置文件nginx.conf
加载,你会在主配置文件/etc/nginx/nginx.conf
中看到这样内容.
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
nginx.conf
中该配置用于加载/etc/nginx/conf.d/
目录下所有的配置文件。
了解这些内容后,我们来编辑站点的conf文件,命令如下:
sudo vim /etc/nginx/conf.d/linux265.com.conf
加入如下处理静态文件的内容,以下内容表示使用正则表达式匹配任何静态文件请求和关闭这些请求的日志记录,并将它们标记为高度可缓存,当然你也可以增加其他后缀名的静态文件。
server {
...
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
...
}
在server
块中,增加location
代码块,用于将请求全部转交wordpress的index.php
处理。
server {
...
location / {
#try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php$is_args$args;
}
...
}
完成后,使用命令:wq
保存并关闭文件。
我们通过以下命令来测试配置文件的正确性,命令如下:
sudo nginx -t
测试配置文件没有任何错误后,通过以下命令让nginx重新加载配置文件并生效。
sudo systemctl reload nginx
至此,nginx的配置完成。
步骤4、下载并配置Wordpress
建议从[wordpress官网](https://wordpress.org/ rel="nofollow")下载最新的wordpress版本,并解压到对应的目录。这里我们存放wordpress目录通常为/var/www/your_domin
,这里的your_domain
可以替换成你的网站域名例如:/var/www/linux265.com
。
01、可以通过在终端中使用wget命令下载wordpress。
cd /tmp
wget https://wordpress.org/latest.tar.gz
02、下载完成后,解压latest.tar.gz
文件,并将解压拷贝到/var/www/your_domin
目录中。使用该-a
标志来确保维护我们的权限。我们在源目录的末尾使用一个点来表示应该复制目录中的所有内容,包括任何隐藏文件。
tar xzvf latest.tar.gz
sudo cp -a /tmp/wordpress/. /var/www/your_domain
03、将所有权分配给www-data
用户和组。这是Nginx运行的用户和组,Nginx需要能够读取和写入WordPress文件才能为网站提供服务并执行自动更新。
sudo chown -R www-data:www-data /var/www/your_domain
04、设置WordPress配置文件,首先复制一份wp-confog.php
文件,之后获取配置文件中需要的一些密钥。
cp /var/www/your_domain/wp-config-sample.php /var/www/your_domain/wp-config.php
要从WordPress密钥生成器中获取安全值:
curl -s https://api.wordpress.org/secret-key/1.1/salt/ > key.txt
您将获得看起来像这样的唯一值,内容保存在key.txt文件中,类似如下:
define('AUTH_KEY', 'cH?Dp28B5e*+m,fSPI#mhwR%3&>SekkPRh}N-2N1zpA+D~|Q.~}8%|ea8H8njhP[');
define('SECURE_AUTH_KEY', 'OAKV5cDS+H&W|vk7T?ai7XniC&A-X=[#[8{uKWSMnS/,pq603SD/^|;1xFjpXnO#');
define('LOGGED_IN_KEY', 'Gjz#DgEZNoNlk4oy&:^~U0K|PLI~Wd@k4>2~jJiJTz=2{0ONOY;-YzE20lIZB,,2');
define('NONCE_KEY', ']=m;bAO?Qzz_1f!Z7b+9UYX[6n(>~Q/CBX(Rb.-X;~d2W;LA O`|Z&.ga%u2ML}6');
define('AUTH_SALT', 'V}*d9G6[M)Lv]l*ahbZ}VEfRIH-oK^2%uK(Ck~!*IBhLtU]-;_x]36G ]q^|4-$-');
define('SECURE_AUTH_SALT', '^0z/>{mH],+$c5j{Arn,}n?LyXSkuu}7u|3hhtWkrk+C>j][:n^qY6z-n)Q.lY-1');
define('LOGGED_IN_SALT', 'wHs):;U1o-8~tTI:Z#+]{w+ Dob{eV%8qReJ^d[FRc;Fqqspi+s-P|1]gLje~,>R');
define('NONCE_SALT', '&?X)Q/+~X? FBG7Oy4iWzDm>)60jMZF-oH|({9?4~jmL3>;4q(WOv,X:5$M-2Dck');
注意:请不要复制上面内容,上面只是示例。
复制你获取到保存在key.txt
文件中内容,替换wp-config.php
中类似如下内容:
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');
替换完成后保存文件。
接下来我们修改wp-config.php文件中的数据库配置内容。找到下面内容,填写你实际的数据库名称,用户名,密码等内容。
define('DB_NAME', 'your_domain');
/** MySQL database username */
define('DB_USER', 'wordpressuser');
/** MySQL database password */
define('DB_PASSWORD', 'password');
define('FS_METHOD', 'direct');
由于我们已授予Web服务器写入所需位置的权限,因此我们可以将文件系统方法明确设置为“direct”。如果这里define('FS_METHOD', 'direct')
未能使用我们当前的设置进行设置,则会导致WordPress在执行某些操作时提示输入FTP凭据。
步骤5、安装Wordpress
以上内容配置完成后,现在我们可以通过浏览器输入地址来在线安装wordpress并进一步配置站点了。
在Web浏览器的地址栏中输入域名或IP地址:
http://server_domain_or_IP
01、选择您要使用的语言:
02、设置站点名称,用户名,密码,邮箱地址并选择是否要阻止搜索引擎为您的网站编制索引。
点击Install WordPress
,安装完成后,会提示安装成功的信息。
03、登录wordpress,进入WordPress管理仪表板。
至此,在CentOS上使用Nginx作为web服务器安装Wordpress教程全部完成。
写在最后
如果你第一次购买VPS搭建自己的wordpress博客网站,也许这篇教程将会对你有所帮助。想了解更多关于如何在CentOS上安装软件之类的教程,请关注本站。
如果您有更好的建议或想法请在下面留言。