• 最纯粹、最抽象的设计难题就是设计桥梁。你面对的问题是: 如何用最少的材料, 跨越给定的距离@保罗.格雷汉姆 (知名黑客 硅谷牛人)

WordPress-搭 建 笔 记

programming BobMaster 717次浏览 2862字 0个评论
文章目录[显示]
这篇文章在 2020年10月07日12:45:43 更新了哦~

最近把原来的博客文章全部删除了,觉得内容太水,毫无意义,于是乎换了Material Premium C 这个主题,决定认真做自己的博客,下面记录这次搭建过程中踩过的坑(centos7.6 php+mysql+apache)

PHP版本选择

新版wordpress5.3不支持php5.4了,直接使用yum install php安装的不是最新版本的php7.3,这个时候我们需要换源

#Install EPEL Repository
yum install epel-release
#Install Remi Repository(Remi is a third party repository that provides the latest versions of PHP)
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
#Disable Remi PHP 5.4 repository
yum install -y yum-utils
yum-config-manager --disable remi-php54
#Enable Remi PHP 7.3 repository
yum-config-manager --enable remi-php73
#Installing PHP 7.3.3 on CentOS 7.6
yum install php
#检查一下版本
php-v
#显示
PHP 7.3.12 (cli) (built: Nov 19 2019 10:24:51) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.12, Copyright (c) 1998-2018 Zend Technologies
# 如果需要拓展插件
yum list php-*
yum install php-<extension_name>
# 最后重启下web服务器即可

Apache的配置问题

通过yum -y install apache后,默认会把/var/www/html设定为网站的根目录,直接把wordpress程序放到这个目录就可以使用了,但是还有一个问题

直接使用会发现,当要安装插件时会出现FTP认证 界面,其实是因为此时这些根目录下的wordpress文件的所有者是root或者你登陆的用户,只需要在有权限的情况下将apache设为该目录的拥有者即可

chown -R apache:apache /var/www/html

在博客发布文章或者更改链接后,如果出现404 NOT FOUND 或者 发布失败,错误信息:此响应不是合法的JSON响应。 原因很有可能是httpd.conf中的AllowOverride 后面跟着的是deny ,改为all 即可

配置示例:

<IfModule mod_ssl.c>
    SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
    <VirtualHost *:443>
        ServerName blog.hibobmaster.com
        DocumentRoot /var/www/blog
        ErrorLog /var/log/blog_error.log
        CustomLog /var/log/blog_access.log combined
        <Directory /var/www/blog>
            AllowOverride All
            Order deny,allow
            Allow from all
        </Directory>
    SSLEngine on
    SSLCertificateFile /etc/apache2/sites-enabled/ssl/server.crt
    SSLCertificateKeyFile /etc/apache2/sites-enabled/ssl/server.key
    SSLCertificateChainFile /etc/apache2/sites-enabled/ssl/ca_bundle.crt

    <IfModule http2_module>
        Protocols h2 h2c http/1.1
    </IfModule>
    </VirtualHost>
</IfModule>

https部署

可在httpd.conf (一般在/etc/httpd/conf)中添加如下配置

<VirtualHost *:80>
        DocumentRoot "/var/www/blog/"
        ServerName blog.hibobmaster.com
</VirtualHost>

再使用certbot申请即可,certbot官网有详细的教程https://certbot.eff.org/

如果想http->>https的话可以配置301重定向

<VirtualHost *:80>
	DocumentRoot "/var/www/blog/"
	ServerName blog.hibobmaster.com
	ErrorLog "/var/log/httpd/blog.hibobmaster.com-error-log"
	CustomLog "/var/log/httpd/blog.hibobmaster.com-error-log" common
RewriteEngine on
RewriteCond %{SERVER_NAME} =blog.hibobmaster.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

Mariadb版本

通过yum安装默认是旧版本,我们根据官方的方法安装最新的稳定版

# 获取系统架构
uname-m
# 我的系统是centos7.3 X86_64,根据官网选择相应版本的配置文件
vim /etc/yum.repos.d/MariaDb
# 添加对应架构的配置文件
# MariaDB 10.4 CentOS repository list - created 2019-12-30 12:57 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
# 安装
sudo yum install MariaDB-server MariaDB-client
# 启动并配置开机自启
systemctl start mariadb.service
systemctl enable mariadb.service

参考文档

1.阿里云ECS搭建wordpress,以及OSS,CDN的使用

2.Installing PHP 7.3.3 on CentOS 7.6

3.certbot instructions

4. https://downloads.mariadb.org/mariadb/repositories/#mirror=icm


文章版权归原作者所有 | 本站默认采用 CC-BY-NC-SA 4.0协议进行授权|
转载请务必注明原作者及本文原始地址:
https://blog.hibobmaster.com/build-up-wordpress/
喜欢 (0)
分享:-)
关于作者:
人生如音乐,欢乐且自由
发表我的评论(代码和日志请使用Pastebin或Gist)
取消评论

                       

去你妹的实名制!

  • 昵称 (必填)
  • 邮箱 (必填,不要邮件提醒可以随便写)
  • 网址 (选填)