1 安装nginx
网上安装方式很多,这就就直接用apt-get了
apt-get install nginx
不用启动啥,然后直接在浏览器里面输入IP:80 就能看到nginx的主页了。
如果修改了一些配置可以使用下列命令重启一下
systemctl restart nginx.service
2 安装mysql
输入安装前也可以更新一下软件源,在安装过程中将会让你输入数据库的密码。
sudo apt-get install mysql-server mysql-client
进入mysql,创建一个用于wordpress的数据库
mysql -uyourname -pyourpassword
//创建数据库
CREATE DATABASE wordpress;
//如果单独分配用户名密码则执行下面内容
//创建数据库用户和密码
CREATE USER wordpressuser@localhost
IDENTIFIED BY 'wordress_password';
//设置wordpressuser访问wordpress数据库权限
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'wordress_password';
//刷新数据库设置
FLUSH PRIVILEGES;
//退出数据库
exit
3 安装PHP
apt-get install php7.0
apt-get install libapache2-mod-php7.0
apt-get install php7.0-mysql
4 nginx配置
在/etc/nginx/sites-available/文件夹中添加wordpress文件
# Default server configuration
#
server {
listen 80;
listen [::]:80;
root /var/www/wordpress;
# Add index.php to the list if you are using PHP
index index.html index.php index.nginx-debian.html;
server_name yumin.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
然后进入enabled文件夹中,添加链接
ln -s ../sites-available/wordpress ./wordpress
5 下载解压wordpress
去wp的官网
找到Download .tar.gz右键复制他的下载链接,然后在服务器下执行命令(因为版本不同,建议重新复制下载链接)
wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
然后解压出来,位置任意
tar -xzvf wordpress-4.9.4-zh_CN.tar.gz
6 修改wordpress的配置文件
在解压的wp文件夹中执行命令
cp wp-config-sample.php wp-config.php
然后编辑 wp-config.php
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');
/** MySQL数据库用户名 */
define('DB_USER', 'root');
/** MySQL数据库密码 */
define('DB_PASSWORD', 'XXX');
/** MySQL主机 */
define('DB_HOST', 'localhost');
/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');
/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
最近将其复制到nginx配置的域名指向的文件夹去
cp -rf wordpress /var/www/
7 打开wordpress
根据nginx配置的域名(yumin.com),使用浏览器进行访问,就会进入wordpress的安装导航界面,按照描述填写即可完成。当然域名要在域名管理器中将解析指向你的服务器才行,这儿就不谈这些了。
8 可能遇到的问题
8.1无法安装插件
在安装插件时,发现需要ftp,我于是去服务器去安装了个vsfptd,结果发现还是不行。就去网上查解决办法,然后查到需要在wp-config.php文件的
/** WordPress目录的绝对路径。 */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
代码下面添加
define('WP_TEMP_DIR', ABSPATH.'wp-content/tmp');/* WordPress的临时目录。*/
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);
这个时候还是会报无法创建文件的错误,但是这里不要去改文件夹的权限,不是那个问题,我也是在看到这个帖子才知道原因是用户组不同,解决很很简单。
- 进入wordpress目录里
- 执行ls -l查看到用户组都是root
- 执行locate nginx.conf命令查看配置文件位置
- 根据位置执行cat命令查看内容,例如(cat /etc/nginx/nginx.conf)
- 观察第一行用户组名字,例如(user www-data;)
- 执行命令chown -R www-data:www-data ./
- 执行ls -l查看到用户组都是www-data即可
其实我在之前服务器安装的时候没有遇到这个问题,按要求输入ftp信息就行了,中间原因有空再捣鼓了。
8.2 非常的卡
估计是wp用到的谷歌的服务,如果把SS开成全局,就发现很快能打开了,这个问题可以通过安装并且启用插件
Disable Google Fonts解决。
8.3 上传主题出错
413 Request Entity Too Large
首先查看
vim /etc/php/7.0/fpm/php.ini
文件中下面两行内容,使用VIM 的?搜索功能
upload_max_filesize = 20M
post_max_size = 20M
然后重启fpm
service php7.0-fpm restart
如果上传20M以内文件仍然报413错误,则再打开文件wordpress
vim /etc/nginx/sites-enabled/wordpress
添加
server {
...
client_max_body_size 20m;
...
}
最后重启nginx
service nginx restart
8.4 修改域名
原来修改域名并不能简简单单的修改nginx配置文件就行,我改了域名才发现,页面导向全是之前的域名,所以也需要修改wp的一些东西才行
可参考该网页下的方式二,使用插件修改。
8.5 上传图片剪切时发送错误
“在裁剪您的图像时发生了错误” 或者 “There has been an error cropping your image.”
缺少 PHP GD 库
sudo apt-get install php7.0-gd
9 其他
官方安装文档