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