基于 CentOS 搭建 WordPress 个人博客

  • 基于 CentOS 搭建 WordPress 个人博客已关闭评论
  • 621 人浏览
  • A+
所属分类:教程分享

带您从准备LNMP 环境开始,一步步搭建起一个属于自己的WordPress 博客。

准备LNMP 环境

LNMP 是Linux(Linux基本命令)、Nginx、MySQL 和PHP 的缩写,是WordPress 博客系统依赖的基础运行环境。我们先来准备LNMP 环境

  • 安装Nginx

    使用  yum 安装Nginx:

    yum install nginx -y

    修改  /etc/nginx/conf.d/default.conf,去除对IPv6地址的监听

     

    ,可参考下面的示例:

    default.conf

    server { listen 80 default_server; # listen [::]:80 default_server; server_name _; root /usr/share/nginx/html;# Load configuration files for the default server block. include /etc/nginx/default.d/*.conf;location / { }error_page 404 /404.html; location = /40x.html { }error_page 500 502 503 504 /50x.html; location = /50x.html { }}

    修改完成后,启动Nginx:

    nginx

    此时,可访问实验机器外网HTTP服务(http://你的IP)来确认是否已经安装成功。

    将Nginx 设置为开机自动启动:

    chkconfig nginx on

    安装MySQL

    使用  yum 安装MySQL:

    yum install mysql-server -y

    安装完成后,启动MySQL 服务:

    service mysqld restart

    设置MySQL 账户root 密码:

     

    /usr/bin/mysqladmin -u root password 'MyPas$word4Word_Press'

    将MySQL 设置为开机自动启动:

    chkconfig mysqld on

     

    安装PHP

    使用  yum 安装PHP:

     

    yum install php-fpm php-mysql -y

    安装之后,启动PHP-FPM 进程:

    service php-fpm start

    启动之后,可以使用下面的命令查看PHP-FPM 进程监听哪个端口

     

    netstat -nlpt | grep php-fpm

    把PHP-FPM 也设置成开机自动启动:

    chkconfig php-fpm on

    安装并配置WordPress

    • 安装WordPress

      配置好LNMP环境后,继续使用  yum 来安装WordPress:

      yum install wordpress -y

      安装完成后,就可以在  /usr/share/wordpress  看到WordPress的源代码了。

      配置数据库

      进入MySQL:

       

      mysql -uroot --password='MyPas$word4Word_Press'

      为WordPress 创建一个数据库:

      CREATE DATABASE wordpress;

      MySQL 部分设置完了,我们退出MySQL 环境:

      exit

      把上述的DB配置同步到WordPress的配置文件中,可参考下面的配置:

      wp-config.php

      <?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the * installation. You don't have to use the web site, you can * copy this file to "wp -config.php" and fill in the values. * * This file contains the following configurations: * * * MySQL settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://codex.wordpress.org /Editing_wp-config.php * * @package WordPress */// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'wordpress');/** MySQL database username */ define('DB_USER', 'root');/** MySQL database password */ define('DB_PASSWORD', 'MyPas$word4Word_Press');/** MySQL hostname */ define('DB_HOST', 'localhost');/** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8');/** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', '');/**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ 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');/**#@-*//** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_';/** * See http://make.wordpress.org/core/2013/10/25/the-definitive-guide-to-disabling-auto-updates-in-wordpress-3-7 *//* Disable all file change, as RPM base installation are read-only */ define('DISALLOW_FILE_MODS', true);/* Disable automatic updater, in case you want to allow above FILE_MODS for plugins, themes, ... */ define('AUTOMATIC_UPDATER_DISABLED', true);/* Core update is always disabled, WP_AUTO_UPDATE_CORE value is ignore *//** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the Codex. * * @link https://codex.wordpress.org/Debugging_in_WordPress */ define('WP_DEBUG', false);/* That's all, stop editing! Happy blogging. *//** Absolute path to the WordPress directory. */ if ( !defined('ABSPATH') ) define('ABSPATH', '/usr/share/wordpress');/** Sets up WordPress vars and included files. */ require_once(ABSPATH . 'wp-settings.php');

      配置Nginx

      WordPress 已经安装完毕,我们配置Nginx 把请求转发给PHP-FPM 来处理

      首先,重命名默认的配置文件:

       

      cd /etc/nginx/conf.d/ mv default.conf defaut.conf.bak

      在  /etc/nginx/conf.d 创建wordpress.conf配置,参考下面的内容:

      wordpress.conf

      server { listen 80; root /usr/share/wordpress; location / { index index.php index.html index.htm; try_files $uri $uri/ /index.php index.php; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

      配置后,通知Nginx 进程重新加载:

      nginx -s reload
    • 最后准备域名和解析就大功告成了!
腾讯云双十一活动