0x00 环境
阿里云ECS云服务器
CPU:1核
内存:4G
操作系统:Centos
系统盘:100G
0x01 安装及配置
主要使用 nginx 、 php 和 mysql
注意:如果下面的设置不生效,试试重启相关的服务
systemctl restart 服务名
使用该命令重启服务
0x02 通过 firewalld 防火墙配置端口访问
CentOS 系统默认安装 firewalld 防火墙,可以通过命令配置允许外部访问服务器的指定端口/协议
# 开启防火墙
systemctl start firewalld
# 允许自启
systemctl enable firewalld
该防火墙通过 firewall-cmd
命令配置,例如向外部永久开放22端口
firewall-cmd --zone=public --add-port=22/tcp --permanent
--zone: 用于配置作用域,public 表示对外开放
--add-port: 指定要配置的端口/协议
--permanent: 参数表示该配置永久有效,重启后不重置端口配置
通常情况下 web 服务器需要开放 22, 80, 443, 3306 端口
# 重载防火墙
firewall-cmd --reload
# 列出所有永久配置的端口规则
firewall-cmd --list-port --permanent
0x03 安装常用环境
# 安装 C 编译环境
yum install gcc-c++
# 安装 pcre 库
yum install pcre pcre-devel
# 安装 zlib 库
yum install zlib zlib-devel
# 安装 openssl
yum install openssl openssl-devel
0x04 安装 nginx
# 安装 nginx
yum install nginx
# 启动 nginx
systemctl start nginx
# 允许开机自启
systemctl enable nginx
0x05 安装 mysql
# 获取并安装 mysql 安装包
rpm -Uvh http://repo.mysql.com/mysql57-community-release-el7.rpm
# 安装 mysql-server
yum install mysql-server
0x06 换源
# 获取并安装用于管理 epel 源的软件包
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
0x07 扩展包管理
# 安装扩展包管理器
yum install yum-utils
0x08 安装 php
# 获取并安装包含 php 软件源的软件包
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# 安装 php 7.2 及常用的模块
yum install php72w php72w-fpm php72w-mysql php72w-gd php72w-ldap php72w-odbc php72w-pear php72w-xml php72w-xmlrpc php72w-mbstring php72w-snmp php72w-soap
# 启动 php
systemctl start php-fpm
# 允许开机自启
systemctl enable php-fpm
0x09 更改 mysql 密码
# 启动 mysql
systemctl start mysqld
# 允许开机自启
systemctl enable mysqld
# 查询 mysql 的 log 中带 password 的记录
grep "password" /var/log/mysqld.log
# 设置密码安全等级为 0
mysql> set global validate_password_policy=0;
# 设置密码最小长度为 1
mysql> set global validate_password_length=1;
# 更改密码
mysql> ALTER USER USER() IDENTIFIED BY 'passwd';
# 退出 mysql 终端
mysql> exit;
0x10 使 nginx 支持解析 php
# 从 default 配置复制一份可用的配置
cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
# 编辑配置文件
vim /etc/nginx/nginx.conf
将如下配置项写进配置文件中 server{}
块内
location ~ \.php$ {
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
0x11 安装 wordpress
# 获取 wordpress 安装包
wget https://cn.wordpress.org/wordpress-4.8.1-zh_CN.tar.gz
这个不是最新版,链接可以去官网直接复制
# 解压
tar -zxvf wordpress-4.8.1-zh_CN.tar.gz
# 将文件夹移动到站点根目录并重命名为 blog
mv wordpress/ /var/www/html/blog
# 为保证 wordpress 能够操作自身文件,需要将其属主修改为 web 服务的账户并给整个文件夹 755 的权限
chown apache:apache -R /var/www/html/blog
chmod 755 -R /var/www/html/blog
wordpress 需要一个自己的数据库,新建一个
# 进入 mysql 终端
mysql -u root -p
# 新建数据库,名为 wordpress
mysql> create database wordpress;
# 退出 mysql
mysql> exit;
0x12 上传文件大小限制
编辑
vim /etc/php.ini
修改以下两个值
post_max_size = 128M
upload_max_filesize = 128M