基于centos7搭建wordpress个人网站的方法详解
前言:
随着计算机技术的普及,搞IT的越来越多,但是随着深入你会发现自己上了贼船,真的是一如IT深似海,从此妹纸是路人啊,当你越来越接近自己想想中的目标是,就会有种渺小感,这个行业知识太过深奥庞大啦。好啦不闲扯,我们开始我们的主题:使用wordpress搭建个人博客。
一、环境准备
我们先介绍下环境和实验中所需要的包
环境:
我使用的是centos7.4的系统
建议关掉selinux和影响到80端口的防火墙策略
程序包:
nginx(使用系统默认带的光盘里的包,当然也可以自己编译安装,但是搭建个人博客不建议,因为没必要)
mariadb-server(数据库使用maridb-server也是系统本地镜像里的)
php-fpm(用来管理php程序的,另外nginx不支持php模块)
php-mysql(用来事项php与数据库连接)
wordpress程序包,官网地址:https://wordpress.org/download/
wordpress主题:https://wordpress.org/themes/
# yum install nginx mariadb-server php-fpm php-mysql -y # systemctl enable nginx mariadb php-fpm 设置开机自启
二、各服务配置
Nginx
写nginx的配置文件也有两种方式,直接写主配置里,和写到conf.d文件夹下,这里使用第二种,其实没啥区别
# vim /etc/nginx/nginx.conf 在http配置段里添加 http { fastcgi_cache_path /var/cache/nginx/fcgi_cache levels=1:2:1 keys_zone=fcgicache:20m inactive=120s; #特别注意:用来设置缓存的一些参数,当你要做多虚拟主机时一定要在重新设置以个并在server配置段里修改 } 这个主要是定义缓存的一些配置,可直接拿来用 # vim /etc/nginx/conf.d/blog.conf #必须conf后缀 server { listen 80 ; #监听地址 server_name blog.luckynm.cn ; #域名 root /data/wordpress ; #web的根路径 index index.php index.html index.hml; #默认索引 location / { try_files $uri $uri/ /index.php?q=$uri&$args; } 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; fastcgi_cache fcgicache; fastcgi_cache_key $request_uri; fastcgi_cache_valid 200 302 10m; fastcgi_cache_valid 301 1h; fastcgi_cache_valid any 1m; } location ~* ^/(status|ping)$ { #用来查看网站的状态信息,可以不添加 fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; include fastcgi_params; } location /files { #用来在网页访问文件夹,相当于做了个文件夹映射,可根据个人情况添加 root /data/wordpress; autoindex on; autoindex_exact_size off; autoindex_localtime on; } } nginx的配置基本就这些,如有疑问可以联系我
MySQL
在命令行输入mysql进入数据库
数据库的话可以再做些安全配置,这里就不演示啦
# mysql MariaDB [(none)]> create user 'ningmeng'@'localhost' identified by 'XXXXXXX'; 创建个给wordpress使用的连接数据库的账号 MariaDB [(none)]> create database wordpress; 创建数据库 MariaDB [(none)]> grant all privileges on wordpress.* to 'ningmeng'@'%'; 给ningmeng用户授权
建议创建好后登陆测试一下
mysql -uningmeng -pXXXXXX
Php-Fpm
它有好多的参数可以设置,也有好多坑,在这里会给大家说一下需要注意的地方
# vim /etc/php-fpm.d/www.conf user = nginx #设置所属者所属组,不设置的话在装wordpress升级主题时有各种各样的权限问题 group = nginx pm = ondemand #推荐使用这个模式,对他的详细介绍参考http://blog.luckynm.cn/?p=65 pm.max_children = 50 #这些都可以配置也可以默认,看情况 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.status_path = /status pm.status_path = /status #后面这三个是用来设置在web页面上查看服务器状态信息的,配合nginx种server段的配置使用 ping.path = /ping ping.response = pong
WordPress
在做好前面的步骤后先不要启动,因为它们启动可能会有顺序问题
把下载下来的wordpress包传到本地,可以重新建一个文件夹存放也可以直接放到/root目录下
建议使用中文的包wordpress-4.9.4-zh_CN.tar.gz
# mkdir -pv /data 创建data目录,这个要和nginx中root定义的根要一致 # tar xvf wordpress-4.9.4-zh_CN.tar.gz -C /data/ 解压到/data目录下 # chown -R nginx:nginx /data/wordpress 修改所属者所属组,不该没办法换主题升级插件,等一系列问题 # cd /data/wordpress # mv wp-config-sample.php wp-config.php 设置配置文件 # vim wp-config.php define('DB_NAME', 'wordpress'); WordPress数据库的名称 define('DB_USER', 'ningmeng'); MySQL数据库用户名 define('DB_PASSWORD', '970628'); MySQL数据库密码 define('DB_HOST', 'localhost'); MySQL主机
启动
systemctl start mariadb php-fpm systemctl start nginx 注意:php-fpm一定要在nginx前启动,要不然会提示找不到缓存文件夹
你可能还喜欢下面这些文章

WordPress网站出现"建立数据库连接时出错"提示时,通常由四种原因导致:数据库凭据错误、服务未运行、数据库损坏或连接数过载。本文详细解析了故障排查步骤:首先检查wp-config.php文件的配置准确性;其次测试数据库服务状态;针对损坏

WordPress数据库优化是提升网站性能的关键。长期运行会积累冗余数据(如修订版本、自动草稿、垃圾评论),导致查询变慢、加载延迟。本文提供系统优化方案:首先强调备份重要性,推荐使用UpdraftPlus或phpMyAdmin;其次通过WP-

本文详细介绍了优化WordPress数据库表结构的方法与重要性。随着网站运行时间增长,数据库会积累冗余数据,导致查询变慢、后台卡顿。文章首先强调备份数据库的必要性,随后指导读者通过phpMyAdmin分析表状态,重点清理修订版本、孤立元数据和

WordPress多站点网络出现数据库连接错误时,可能导致整个网络瘫痪,因其共享数据库的特性。常见原因包括:1. **wp-config.php配置错误**(如数据库凭证不匹配或迁移后未更新);2. **表前缀冲突**(多站点启用时未正确配置

RestoreWordPress文件备份要获取WordPress的备份文件,您需要在系统上安装FileZilla。WordPress数据库备份以下是在WordPress中的数据库备份的简单步骤。

//developer.wordpress.org/reference/functions/wp_mkdir_p/。它返回上传目录路径并创建一个文件夹(如果尚不存在)。

WordPress后台无法登录是常见但令人困扰的问题,本文系统性地提供了从简单到复杂的解决方案。首先排除浏览器缓存、插件冲突(通过重命名plugins文件夹)或主题问题;其次检查数据库连接(修正wp-config.php配置或修复表)、PHP

WordPress文章发布后无法显示是常见但令人困扰的问题,通常由多种因素导致。本文提供了系统化的排查方案:首先检查基础设置(发布状态、时间安排和可见性),其次清理浏览器、插件和CDN缓存,再排查插件冲突或主题限制。若问题仍未解决,可深入检查