nginx+php+mysql+wordpress搭建简单站点 安装及配置过程

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

nginx+php+mysql+wordpress搭建简单站点 安装及配置过程的更多相关文章
- Nginx+php+mysql+wordpress搭建自己的博客站点
服务器环境要求Centos 6 或以上版本(由于我们的目标是半小时内搭建好,那就选简单yum安装)MySQL 5或更新版本Nginx 1或更新版本PHP 5 或更新版本 php-fpm 5或更新版本 ...
- LNMP 搭建 wordpress 站点 安装及配置过程
0x00 环境 阿里云ECS云服务器 CPU:1核 内存:4G 操作系统:Centos 系统盘:100G 0x01 安装及配置 主要使用 nginx . php 和 mysql 注意:如果下面的设置不 ...
- MySQL的Master/Slave群集安装和配置
本文介绍MySQL的Master/Slave群集安装和配置,版本号安装最新的稳定版GA 5.6.19. 为了支持有限HA.我们用Master/Slave读写简单孤立的集群.有限HA这是当Master不 ...
- mysql数据库在Linux下安装与配置
mysql是一种开放源代码的关系型数据库系统(RDBMS),使用最常用的数据库管理语言--结构化查询语句(SQL)进行数据库管理. 由于mysql的开源,因此任何人都可以在General Publ ...
- mysql数据库在windows下安装与配置
mysql是一种开源源代码的关系型数据库系统(RDBMS),使用最常用的数据库管理语言--结构化查询语句(SQL)进行数据库管理. MySQL是开放源代码的,因此任何人都可以在General Pu ...
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...
- 图解MySQL5.5详细安装与配置过程
MySQL是一个开源的关系型数据库管理系统,原由瑞典MySQL AB公司开发,目前属于Oracle公司旗下.MySQL是目前世界上开源数据库中最受欢迎的产品之一,是应用最为广泛的开源数据库.MySQL ...
- MySql5.7免安装版配置过程(ubuntu16.04)
MySql5.7免安装版配置过程(ubuntu16.04) 原创 2017年02月07日 16:58:24 标签: 1001 编辑 删除 一.安装环境: 操作系统:ubuntu16.04 数据库:my ...
- Win7上Git安装及配置过程
Win7上Git安装及配置过程 文档名称 Win7上Git安装及配置过程 创建时间 2012/8/20 修改时间 2012/8/20 创建人 Baifx 简介(收获) 1.在win7上安装msysgi ...
随机推荐
- C++ Primer 有感(标准库类型)
1.当进行string对象和字符串字面值混合连接操作时,+操作符的左右操作数必须至少有一个是string类型的: string s1= "hello"; sring s2=&quo ...
- Android studio使用git-android学习之旅(79)
首先我参考了hello_my_show和梦痕_sky的博客,表示感谢 android studio对于git的支持是很好的,这节课我们拉讲解怎么使用git可视化工具来clone project和提交修 ...
- [转]Android长度单位详解
android中定义的dimension单位有以下这些:px(Pixels ,像素):对应屏幕上的实际像素点.in(Inches ,英寸):屏幕物理长度单位.mm(Millimeters ,毫米):屏 ...
- JNI动态注册native方法及JNI数据使用
前言 或许你知道了jni的简单调用,其实不算什么百度谷歌一大把,虽然这些jni绝大多数情况下都不会让我们安卓工程师来弄,毕竟还是有点难,但是我们还是得打破砂锅知道为什么这样干吧,至少也让我们知道调用流 ...
- GRUB与Linux系统修复(第二版)
GRUB配置解析 配置文件保存在 /boot/grub/grub.conf[/boot分区最好应该单独划分出来] 软链接保存在 /etc/grub.conf 1.grub.conf文件分析 defau ...
- AngularJS进阶(十四)AngularJS灵异代码事件
AngularJS灵异代码事件 注:请点击此处进行充电! 事情原委 router_sys.js源代码如下: 自己在html路由跳转的代码如下: 但是在实际路由过程中,却路由到了下面的状态,相应的页面中 ...
- Java-ServletRequestWrapper
/** * * Provides a convenient implementation of the ServletRequest interface that * can be subclasse ...
- android Titlebar一行代码实现沉浸式效果
github地址 一个简单易用的导航栏TitleBar,可以轻松实现IOS导航栏的各种效果 整个代码全部集中在TitleBar.java中,所有控件都动态生成,动态布局.不需要引用任何资源文件,拷贝 ...
- Android Bootloader LittleKernel的两篇文章
Android 开发之 ---- bootloader (LK) LK是什么 LK 是 Little Kernel 它是 appsbl (Applications ARM Boot Loader)流程 ...
- Linux常用命令(第二版) --网络通信命令
网络通信命令 1.write /usr/bin/write 格式: write [用户名] #用于向用户发送信息,前提是这个用户已经登录到了这台服务器主机,不然的话,也没有办法给他留言,所以,writ ...