title: centos7+腾讯云服务器搭建wordpress

date: 2020-03-04

categories: web

tags: [wordpress]

分两部分:1.搭建LEMP环境 2.安装 wordpress

1.搭建LEMP环境

LEMP 是 PHP 网站应用的运行环境,如果打算在本地或者服务器上去运行一个用 PHP 语言写的网站应用,需要搭建 LEMP 环境。

L 表示 Linux .

这里我购买了腾讯云centos7.6. 学生有优惠^^

E 表示的是 Nginx ,E 取的是 Nginx 的读音(Engine X)。

它是一种 Web 服务器,可以为网站应用提供 Web 服务,也就是接待用户访问的服务,用户请求资源,Nginx 提受用户的请求,处理一下,再把用户需要的资源发送给用户。

M 表示 MySQL/MariaDB ,是网站应用使用的数据库管理系统。数据库管理系统里面创建很多的数据库,然后分配给网站应用去使用。MySQL 跟 MariaDB 可以相互兼容。

P,表示的是 PHP。它是解释 PHP 语言用的解析器,我们可以使用 PHP-FPM 跟 Web 服务相互沟通。

也就是如果也就是如果 Web 服务遇到对 PHP 资源的请求,会把请求交给 PHP-FPM ,它会去解释请求的 PHP,

再把结果交给 Web 服务,然后 Web 服务器(比如:NGINX)会把最后的结果返回给用户。

参考了一点:https://linux265.com/news/3482.html

网上一些搭建环境的教程用到apache也就是httpd,这里我用nginx。Nginx内部没有配置php所以需要一些操作。

下面的操作都是在服务器的命令行进行。

1.1. 安装 nginx

yum install -y nginx
然后
systemctl start nginx # 启动nginx
systemctl enable nginx.service # 设置为开机启动

1.2.安装 Mariadb

yum install mariadb mariadb-server
systemctl start mariadb ==> 启动mariadb systemctl enable mariadb ==> 开机自启动 mysql_secure_installation ==> 设置 root密码等相关

测试登录:

mysql -u root -p

1.3. 安装php

yum install php php-fpm php-bcmatch php-gd php-mbstring php-mcrypt php-mysql

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php72
sudo yum install php-fpm php-opcache php-cli php-gd php-curl php-mysql
php -v

1.4.配置php 与nginx

sudo yum install php-fpm
vim /etc/php-fpm.d/www.conf

这里修改了user,group,listen。如果原来有,注释掉就好。

;user = apache
;group = apache user = nginx
group = nginx ;listen = 127.0.0.1:9000
listen = /run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx

然后启动服务。

sudo systemctl enable php-fpm

sudo systemctl start php-fpm

确保/var/lib/php目录具有正确的权限:

chown -R root:nginx /var/lib/php

保存文件,启用并启动PHP FPM服务:

sudo systemctl enable php-fpm
sudo systemctl start php-fpm

vi /etc/nginx/nginx.conf 打开nginx主配置文件,按i进入编辑模式,修改其中的sever的location ~ .php部分为以下内容。(注释掉上面的location是可选的)

		# location /{
#} location ~ /.php$ {
try_files $uri =404;
root /var/www/wordpress;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
}

重启nginx服务

sudo systemctl restart nginx

测试php-fpm是否安装成功.

vi /usr/share/nginx/html/index.php

<?php
echo "<title>Test Page</title>";
echo "Hello World!";
?>

然后访问 ip/index.php. ip是你服务器的IP

我这里报错

注意:这里可能是上面

sudo systemctl enable php-fpm

sudo systemctl start php-fpm

没有输入的问题。

也可能是另一个问题参考:https://blog.csdn.net/levena/article/details/52712666

使用这个方法遇到问题时建议使用

ps -ef | grep nginx

kill -QUIT 主进程号

退出nginx,和相关进程,然后重新启动nginx和 php-fpm

然后再登录ip/index.php。显示helloword。说明php,nginx配置成功。

2.安装 wordpress

2.1. 创建wordpress数据库

给wordpress创建数据库,然后重启服务

mysql -u root -p     # 用上面设置的密码登陆mysql
mysql>create database wordpress; # 创建wordpress数据库 CREATE USER wordpressuser@localhost IDENTIFIED BY 'XXXX(password)' #创建一个用户 GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost #权限
FLUSH PRIVILEGES //更改用户权限
exit //保存并退出 systemctl restart mariadb.service #重启相关服务

2.2. 下载安装wordpress

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

注意过程中任何wget的下载,可能会很慢,解决办法是先下载好然后 rz 命令传到服务器。

比如 https://cn.wordpress.org/latest-zh_CN.tar.gz

官网经常429错误,可以去网上找一找安装包。

Zip可以转换成tar.gz。

Rz传用 xshell。

# 解压wordpress
tar zxvflatest.tar.gz cd wordpress/ # 进入到wordpress目录
cp wp-config-sample.php wp-config.php # 复制wp-config-sample.php并重命名为wp-config.php
vim wp-config.php # 打开该文件

找到mysql设置的配置部分,按i进入编辑模式,将配置的mysql信息修改

/** WordPress数据库的名称 */
define('DB_NAME', 'database_name_here'); /** MySQL数据库用户名 */
define('DB_USER', 'username_here'); /** MySQL数据库密码 */
define('DB_PASSWORD', 'password_here'); /** MySQL主机 */
define('DB_HOST', 'localhost'); /** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8'); /** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

然后参考https://www.linuxprobe.com/install-wordpress-nginx.html。

复制文件到一个方便的文件夹下。

#创建我们将保留wordpress文件的目录:
sudo mkdir -p /var/www/wordpress #将解压缩的WordPress文件传输到网站的根目录。
#sudo cp -r ~/wordpress/* /var/www/wordpress #修改权限/var/www ,使未来的自动的WordPress插件和文件与SFTP编辑的更新。
#如果不执行这些步骤,您可能会在尝试任一任务时收到“要执行请求的操作,需要连接信息”错误消息。
#首先,切换到web目录:
cd /var/www/ #将目录的所有权授予nginx用户,将“用户名”替换为服务器用户的名称。
sudo chown nginx:nginx * -R
sudo usermod -a -G nginx username

2.3修改nginx配置

先修改nginx

server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /var/www/wordpress;
include /etc/nginx/default.d/*.conf; location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php index.php;
}
location ~ \.php$ {
try_files $uri =404;
root /var/www/wordpress;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
}
sudo systemctl restart nginx #重启

然后浏览器打开

http://ip/wp-admin/install.php

就显示下面的图,可以进行设置了。(下图来源于网络)

步骤 2.3 遇到的问题是403forbidden ,解决是 mginx 的配置文件添加了position的内容(上面的代码是修改好的)。

解决403参考了https://blog.csdn.net/dreamstone_xiaoqw/article/details/78078441 。

centos7+腾讯云服务器搭建wordpress的更多相关文章

  1. 在腾讯云上面搭建WordPress博客网站

    一.准备工作 我们使用腾讯云服务器来运行WordPress,腾讯云会给新用户七天的产品体验时间还有一些代金券,做为新手尝试成本是比较小的. 腾讯云长期举办 "云+校园" 活动,学生 ...

  2. 在腾讯云上搭建WordPress博客

    笔者一直很羡慕那些搭建了个人博客的大牛,在最近工作之余也尝试着搭建了自己的博客,历时1周,这篇文章就将踩过的坑记录下来,先看下成果,链接在此 1- 购买腾讯云主机 腾讯云官网,我选了79元/月的最便宜 ...

  3. 在云服务器搭建WordPress博客(一)实现云服务器与域名的绑定

    随着云的兴起,越来越多的人选择在云服务器上搭建自己的博客,比较著名的开源博客管理系统当属WordPress了,那么怎么在服务器上搭建WordPress呢? 我们需要让别人能够访问我们的博客,就比如输入 ...

  4. 【腾讯云】腾讯云服务器搭建ftp服务器

    一.硬件描述 1.1 云服务器:腾讯云 云主机 操作系统:Ubuntu Server 14.04.1 LTS 32位 CPU:1核 内存:1GB 系统盘:20GB(本地磁盘) 数据盘:0GB 公网带宽 ...

  5. 腾讯云服务器搭建Apache/PHP/MySQL环境

    软件环境 Windows Server 2008 R2 企业版 SP1 64位 刚刚进入 Windows Server ,你会看到以下界面: 列出了服务器的基础信息和常用配置 下载 XAMPP htt ...

  6. 腾讯云服务器搭建WampServer环境

    软件环境Windows Server 2008 R2 企业版 SP1 64位 刚刚进入 Windows Server ,你会看到以下界面: 列出了服务器的基础信息和常用配置下载 XAMPP https ...

  7. 在云服务器搭建WordPress博客(二)使用xampp并解决端口冲突问题

    要搭建一台外界可以访问的服务器,就必须有对应的服务器环境.在这里我用的xampp集成环境(我是菜鸟级......),xampp集成了PHP+Apache+MySQL+perl,安装方便,不用再特意去设 ...

  8. 在云服务器搭建WordPress博客(六)发布和管理文章

    <( ̄︶ ̄)↗[GO!] 发布文章是一个网站后台最重要的功能之一,WordPress的文章发布功能是比较强大的,系统简单地介绍一下. 访问后台 – 文章 – 写文章 ,就可以看到如下图所示的界面 ...

  9. 在云服务器搭建WordPress博客(五)创建和管理文章分类

    不同主题的文章划分到不同的分类,有助于访客寻找他们想要的内容,提高用户体验.所以,为你的网站创建文章分类是很有必要的.那么,WordPress系统如何创建和管理文章分类呢?今天倡萌就简单介绍一下. 创 ...

随机推荐

  1. Eureka详解系列(一)--先谈谈负载均衡器

    这个系列开始研究 Eureka,在此之前,先来谈谈负载均衡器. 本质上,Eureka 就是一个负载均衡器,可能有的人会说,它是一个服务注册中心,用来注册服务的,这种说法不能说错,只是有点片面. 在这篇 ...

  2. java之 Request

    0x01.Request 什么是request 在Servlet API中,定义了一个HttpServletRequest接口,它继承自ServletRequest接口,专门用来封装HTTP请求消息. ...

  3. Mybatis plus通用字段自动填充的最佳实践总结

    在进行持久层数据维护(新增或修改)的时候,我们通常需要记录一些非业务字段,比如:create_time.update_time.update_by.create_by等用来维护数据记录的创建时间.修改 ...

  4. ovs-fields

    1. 字段匹配 精确匹配 field=value,如,nw_src=10.1.2.3. 按位匹配 field=value/mask,如,nw_src=10.1.0.0/255.255.0.0,nw_s ...

  5. Linux 下安装 JDK

    JDK 依赖包: yum install glibc.i686 卸载原有的 JDK 查看本机已安装软件:rpm -qa 查看与java相关的软件:rpm -qa | grep java 删除自带软件: ...

  6. 小鹏汽车技术中台实践 :微服务篇 InfoQ 今天 以下文章来源于InfoQ Pro

    小鹏汽车技术中台实践 :微服务篇 InfoQ  今天 以下文章来源于InfoQ Pro

  7. (010)每日SQL学习:按字母顺序排列字符串

    需求:一串字母'ADFGH',需要按照顺序来显示:A D F G H 第一步:先把字符串拆分 with test as( select 'ADFGH' as a from dual ) select ...

  8. 像羽毛一样轻的MVVMLight(一)(MVVM 和 MVVMLight简介)

    致敬 在此致敬翁智华大佬,感谢大佬为后辈们写下如此详细的文档,本文将在原文基础上添加些自己的理解,希望这样优秀的文档广为流传. 原文请参考 https://www.cnblogs.com/wzh201 ...

  9. Node.js躬行记(6)——自制短链系统

    短链顾名思义是一种很短的地址,应用广泛,例如页面中有一张二维码图片,包含的是一个原始地址(如下所示),如果二维码中的链接需要修改,那么就得发代码替换掉. 原始地址:https://github.com ...

  10. 常用shell命令及其用法

    ls(lsit) ​ 1.作用:列出文件列表 ​ 2.用法:ls [-a|-A--] [filename|directory] ​ ls ​ ls -a:查看隐藏文件 ​ ls -l:查看文件详细信息 ...