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搭建简单站点 安装及配置过程的更多相关文章

  1. Nginx+php+mysql+wordpress搭建自己的博客站点

    服务器环境要求Centos 6 或以上版本(由于我们的目标是半小时内搭建好,那就选简单yum安装)MySQL 5或更新版本Nginx 1或更新版本PHP 5 或更新版本 php-fpm 5或更新版本 ...

  2. LNMP 搭建 wordpress 站点 安装及配置过程

    0x00 环境 阿里云ECS云服务器 CPU:1核 内存:4G 操作系统:Centos 系统盘:100G 0x01 安装及配置 主要使用 nginx . php 和 mysql 注意:如果下面的设置不 ...

  3. MySQL的Master/Slave群集安装和配置

    本文介绍MySQL的Master/Slave群集安装和配置,版本号安装最新的稳定版GA 5.6.19. 为了支持有限HA.我们用Master/Slave读写简单孤立的集群.有限HA这是当Master不 ...

  4. mysql数据库在Linux下安装与配置

      mysql是一种开放源代码的关系型数据库系统(RDBMS),使用最常用的数据库管理语言--结构化查询语句(SQL)进行数据库管理. 由于mysql的开源,因此任何人都可以在General Publ ...

  5. mysql数据库在windows下安装与配置

      mysql是一种开源源代码的关系型数据库系统(RDBMS),使用最常用的数据库管理语言--结构化查询语句(SQL)进行数据库管理. MySQL是开放源代码的,因此任何人都可以在General Pu ...

  6. nginx在Centos7.5下源码安装和配置

    安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...

  7. 图解MySQL5.5详细安装与配置过程

    MySQL是一个开源的关系型数据库管理系统,原由瑞典MySQL AB公司开发,目前属于Oracle公司旗下.MySQL是目前世界上开源数据库中最受欢迎的产品之一,是应用最为广泛的开源数据库.MySQL ...

  8. MySql5.7免安装版配置过程(ubuntu16.04)

    MySql5.7免安装版配置过程(ubuntu16.04) 原创 2017年02月07日 16:58:24 标签: 1001 编辑 删除 一.安装环境: 操作系统:ubuntu16.04 数据库:my ...

  9. Win7上Git安装及配置过程

    Win7上Git安装及配置过程 文档名称 Win7上Git安装及配置过程 创建时间 2012/8/20 修改时间 2012/8/20 创建人 Baifx 简介(收获) 1.在win7上安装msysgi ...

随机推荐

  1. python“# -*- coding: UTF-8 -*-”

    python跑一趟红 python脚本文件中,python编译器是使用ascii码来解释脚本内容.如果.py源文件中包含中文,会报错(注释也报错).所以文件开头加上"# -*- coding ...

  2. (NO.00001)iOS游戏SpeedBoy Lite成形记(一)

    这是本猫第一个原创iOS游戏,留此为证!看编号貌似要写9万多个,千锤百炼还是太少吧!? ;) 这是一个赛跑游戏,几位选手从起点跑到终点看谁用的时间最少.现在需要实现的功能是: 1.8位选手从起点移动至 ...

  3. 推荐大家在GitHub 上值得关注学习的 iOS 开源项目

    GitHub上有很多不错的iOS开源项目,和大家特别推荐以下几个项目: 1. ReactiveCocoa GitHub链接:ReactiveCocoa/ReactiveCocoa GitHub自家的函 ...

  4. Java 继承Thread类和实现Runnable接口的区别

    ava中线程的创建有两种方式: 1.  通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2.  通过实现Runnable接口,实例化Thread类 在实际应用中,我 ...

  5. 为多态基类声明virtual析构函数

    一个函数的返回值为基类指针,而当指针指向一个派生类对象,接下来派生类对象被这个基类指针删除的时候,就出现了局部销毁的问题.因为C++指出,当派生类经由一个基类指针被删除,而该基类指针带着一个non-v ...

  6. C++ 传参时传内置类型时用传值(pass by value)方式效率较高

    来源:唐磊的个人博客<C++ 传参时传内置类型时用传值(pass by value)方式效率较高> 在<Effective C++>里提到对内置(C-like)类型在函数传参时 ...

  7. 让App中加入LruCache缓存,轻松解决图片过多造成的OOM

    上次有过电话面试中问到Android中的缓存策略,当时模糊不清的回答,现在好好理一下吧. Android中一般情况下采取的缓存策略是使用二级缓存,即内存缓存+硬盘缓存->LruCache+Dis ...

  8. Android进阶(二十)AndroidAPP开发问题汇总(四)

    · Android进阶(二十)AndroidAPP开发问题汇总(四) android:layout_width和android:width的区别 基中的android:layout_width和and ...

  9. android 高仿京东

    android 高仿京东源码,两年前的作品,最近发现一些老代码,发布出来给初学者学习,下面附上几张展示的效果,有需要的请到下面地址下载,记得stare哦 https://github.com/xian ...

  10. C语言笔试经典--求分数数列的和

    题目: 求数组的和    2   3/2   5/3   8/5  13/8   21/13  ...    求前20项的和 //求分数数列的和 #include<stdio.h> // ...