centos 安装wordpress全配置
升级系统
这里有两种方式
# 升级所有包,改变软件设置和系统设置,系统版本内核都升级
yum -y upgrade
# 升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变
yum -y update
安装EPEL
# 这是centos 7的最新源,如果是其它版本换成对应版本即可
rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# 检查是否已添加至源列表
yum repolist
安装Apache
利用yum命令安装Apache
yum -y install httpd
启动httpd并且设置为开机启动
systemctl start httpd.service
systemctl enable httpd.service
安装成功后,可以看到熟悉的测试界面
另外,还需要配置一下防火墙,打开80和443端口
首先安装firewall
yum -y install firewalld firewall-config
systemctl start firewalld.service
systemctl enable firewalld.service
配置防火墙
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
另外,如果对新的firewall配置不熟悉,或者想要使用原来的iptables也是可以的,利用一下命令便可以继续使用iptables service
systemctl stop firewalld
systemctl disable firewalld
iptables-service
touch /etc/sysconfig/iptables
systemctl start iptables
systemctl enable iptables
touch /etc/sysconfig/ip6tables
systemctl start ip6tables
systemctl enable ip6table
安装PHP
首先安装PHP及常用组件
yum -y install php
查看所有组件
yum search php
选择所需组件进行安装
yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
完成后我们可以新建一个PHP页面查看安装的组件
vi /var/www/html/info.php
编辑为以下内容
<?php
phpinfo();
?>
重启httpd服务
systemctl restart httpd.service
打开网址 http://x.x.x.x/info.php 进行查看(x.x.x.x为vps的ip地址)
cloudflare SSL证书设置
上传证书文件
Origin Certificate
和Private key
到vps# 安装ssl模块
yum -y install mod_ssl
# 备份,记得备份文件
cp /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.bak
vi /etc/httpd/conf.d/ssl.conf
在< VirtualHost >这里设置证书路径
<VirtualHost _default_:443>
DocumentRoot /var/www/html2
ServerName www.yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
</VirtualHost>
注意:所有属性都存在文件中,只需要删掉注释或者更改值即可
SLCertificateFile
是OriginCA certificate
.SSLCertificateKeyFile
是OriginCA private key
.
测试文件是否有问题,这里只能测试语法格式问题,但内容问题不能测试出来
apachectl configtest
重启服务器
systemctl restart httpd.service
注意事项:
如果使用CDN加速,先关掉CDN之后再测试通过之后再开启CDN加速。
而CDN加速默认是没有SSL的,记得开启SSL。
cloudflare Crypto设置
SSL
- Off: 禁用SSL,全部为http。说明:这里是指Cloudflare不在中间加证书,导致浏览器显示cloudflare证书,但如果你的服务器本身就有证书,这里是可以显示证书的,前提是你不用cloudflare的CDN(即使是ipv6用CDN,ipv4不用CDN,而使用ipv4方式访问网站,会导致网站直接从https直接跳转到http,这个跳转会导致在设置http 301 重定向的时候出现循环跳转,最终无法打开网页)
- Flexible: 服务器上不需要配置证书,甚至是一个无效证书。有可能导致重定向过多的问题(原因在于访问服务器的时候是通过http方式访问的,如果服务器设置重定向,就会导致问题,显示为"The page isn’t redirecting properly" or "ERR_TOO_MANY_REDIRECTS".解决办法)服务器需要同时支持http和https访问。
- Full: 服务器上需要有证书,但不会验证证书的有效性。直接通过https方式访问服务器。理论上应该heroku.com和github.com上的网站应该是没有问题的,但不知道是为什么,heroku.com上的网站失败,github.com上的网站成功。
- Full(Strict): 服务器上要有证书,而且会验证证书的有效性。直接通过https方式访问服务器。
综上,有三种网站配置方案
Flexible
wordpress支持http和https同时访问,网站的配置采用默认的http配置,而不是https,heroku.com和github.com网站全部正常。
Full
wordpress只需要支持https,证书可以自签或者过期等,可以不支持http,heroku.com网站打不开,github.com网站可以打开
Full(Strict)
wordpress只需要支持https,证书需要验证正确。
安装WordPress
下载WordPress
yum -y install wget unzip net-tools
wget http://wordpress.org/latest.zip
解压文件,并且将其复制到/var/www/html目录下
unzip -q latest.zip
cp -rf wordpress/* /var/www/html/
修改文件夹权限
chown -R apache:apache /var/www/html/
chmod -R 755 /var/www/html/
mkdir -p /var/www/html/wp-content/uploads
chown -R apache:apache /var/www/html/wp-content/uploads
编辑配置文件
cd /var/www/html
cp wp-config-sample.php wp-config.php
vi wp-config.php
将其修改为以下格式
[…]
// * MySQL settings - You can get this info from your web host * //
/* The name of the database for WordPress /
define(‘DB_NAME’, ‘wordpressdb’);
/* MySQL database username /
define(‘DB_USER’, ‘wordpressuser’);
/* MySQL database password /
define(‘DB_PASSWORD’, ‘123456’);
[…]
保存后退出,重启相关服务
systemctl restart httpd.service
WordPress的个人设置
完成以上配置后,便可以登陆http://yourserverip/来访问你的博客了。
登陆界面如下
wordpress 详细配置
provisional headers are shown
这个错误提示是在网页调试窗口看到的错误提醒
主要是CSS中的跨站脚本导致浏览器提醒,在浏览器地址栏关闭拦截即可。这是安全性问题。
想要彻底避免浏览器提示,chrome可以安装插件。
评论
发表评论