LNMP环境下搭建wordpress

本教程介绍如何在centos7 系统下基于Nginx部署搭建WordPress。包括下载WordPress,创建WordPress操作的MySQL数据库和用户,配置WordPress,在Nginx中配置WordPress以及安装WordPress。

 

下载WordPress

直接通过wget命令去它官网下载最新的版本:

wget http://wordpress.org/latest.tar.gz

解压:

tar -xzvf latest.tar.gz

创建WordPress操作的数据库和用户

yum 安装mysql 5.6 请参考 https://www.cnblogs.com/weifeng1463/p/7992796.html

yum 安装 nginx  请参考 https://www.cnblogs.com/weifeng1463/p/9187308.html

yum 安装 php7.1   请参考  https://www.cnblogs.com/nulige/p/9382064.html  

创建MySQL时设置的root密码登录MySQL:

mysql -u root -p

创建数据库:

CREATE DATABASE wordpress;

创建用户:

CREATE USER wordpress@localhost;

设置密码:

SET PASSWORD FOR wordpress@localhost=PASSWORD("your password");

配置权限:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@localhost IDENTIFIED BY 'your password';

刷新权限配置:

FLUSH PRIVILEGES;

退出MySQL:

QUIT;

配置WordPress

重命名示例文件wp-config(此处的路径/root/wordpress对应你自己的存放路径):

mv /root/wordpress/wp-config-sample.php /root/wordpress/wp-config.php

修改配置文件内容:

vi /root/wordpress/wp-config.php

修改的内容包括DB_NAME,DB_USER,DB_PASSWORD以及下面的唯一key,其中前三个是在第二步自己设置的内容,唯一key可以直接去它提供的网站上拷贝,修改后的文件如下所示:

 

 

配置Nginx

nginx 的配置文件如下:

 cat /etc/nginx/nginx.conf
user  nobody;
worker_processes  auto;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {

    use epoll;
    worker_connections  65535;
}

http
{
    include mime.types;
    default_type application/octet-stream;
    server_names_hash_bucket_size 3526;
    server_names_hash_max_size 4096;
    log_format main '"$remote_addr" - "$remote_user"  "[$time_local]" "$request" "$request_body" "$status"'
                        '"$body_bytes_sent" "$http_referer" "$http_user_agent" "$http_x_forwarded_for"'
                        '"$upstream_addr" "$upstream_response_time" "$upstream_status" "$request_time"'; 

    underscores_in_headers on;   #下划线header允许代理
    sendfile on;
    tcp_nopush on;
    keepalive_timeout 30;
    client_header_timeout 3m;
    client_body_timeout 3m;
    send_timeout 3m;
    connection_pool_size 256;
    client_header_buffer_size 32k;
    large_client_header_buffers 4 256k;
    request_pool_size 4k;
    output_buffers 4 32k;
    postpone_output 1460;
    client_max_body_size 100m;
    client_body_buffer_size 256k;
    client_body_temp_path /etc/nginx/client_body_temp;
    proxy_temp_path /etc/nginx/proxy_temp;
    fastcgi_temp_path /etc/nginx/fastcgi_temp;
    fastcgi_intercept_errors on;
    tcp_nodelay on;
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 8k;
    gzip_comp_level 5;
    gzip_http_version 1.1;
    gzip_types text/plain application/x-javascript text/css text/htm  application/xml text/javascript application/javascript;
    gzip_vary on;
    access_log  /var/log/nginx/access.log  main;
    include /etc/nginx/conf.d/*.conf;
}

  

 cat /etc/nginx/conf.d/allplus.conf 
server {
       listen       80;
        server_name  47.90.****.31;
        index index.html index.htm index.php;   
         root /data/www;  
         
         location ~ .php$ {       
            include fastcgi_params;
           fastcgi_pass 127.0.0.1:9000;
             fastcgi_index index.php;   
        fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;    
}

    }

  

Nginx的root路径是/data/www/,所以讲wordpress里面的内容拷贝到此路径下:

cp -r /root/wordpress/* /data/www/

修改权限(可以设置网址目录文件777 , 允许所有用户可操作, 防止遇到权限问题):

chown -R 777 /data/www/

 

重启Nginx:

/etc/init.d/nginx restart

安装WordPress

全部搞定后,访问你的ip或者是域名应该就是这样子的了:

选择语言->设置标题与管理员用户名与密码以及电子邮件->安装WordPress

安装完后,访问你的IP或者域名,一个初始的博客就搭建好了~:

 

访问,输入刚才设置的账户和密码,进入博客管理界面,在这里可以写文章,改主题,应用插件等等,改完再访问你的博客主页就会看到更新~:

上传主体theme时遇到的问题:

问题描述

WordPress 上传题压缩包时出现这个问题

The link you followed has expired.

原因
服务器的上传限制(默认限制为20M)。

解决方法
修改 php.ini 文件中:

vim /etc/php.ini

修改如下三项(将值根据实际情况调大):

upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300

重启php-fpm ,nginx服务

systemctl restart nginx

systemctl restart php-fpm

2.  上传主体需要ftp的问题 

使用SFTP连接到服务器,进入wp-content目录,新建tmp文件夹设置文件夹的权限为777。返回网站根目录,编辑wp-config.php

添加下列代码(注意中英文符号)

define('WP_TEMP_DIR',ABSPATH.'wp-content/tmp');
define("FS_METHOD","direct");
define("FS_CHMOD_DIR",0777);
define("FS_CHMOD_FILE",0777);

注意:要在定义ABSPATH的后面添加

最后的代码应该是

 
/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
        define( 'ABSPATH', dirname( __FILE__ ) . '/' );
}

define('WP_TEMP_DIR',ABSPATH.'wp-content/tmp');
define("FS_METHOD","direct");
define("FS_CHMOD_DIR",0777);
define("FS_CHMOD_FILE",0777);

   

保存后设置wp-content目录中的plugins和themes文件夹权限为777,此时插件和主题已经可以直接更新了。注意操作顺序,先建立tmp,后设置权限为777,再修改wp-config.php配置文件



原文地址:https://www.cnblogs.com/weifeng1463/p/8005500.html