CentOS7 下配置 Nginx + PHP7 + MariaDB + ThinkPHP5.1

简介: 本次配置选择的服务器系统为 Centos7 环境是 Nginx + PHP7 + MariaDB + ThinkPHP5.1

最近突然想学习一下使用一些比较成熟的后台框架,考虑到之前帮大佬打下手的时候用过 ThinkPHP 所以就暂定了以 ThinkPHP 为主要学习目标。

下面是我在服务器端配置 Thinkphp 所需环境而踩的一些坑(且有很多已经是老坑了):

  • 本次配置选择的服务器系统为 Centos7 环境是 Nginx + PHP7 + MariaDB + ThinkPHP5.1
  • 我会按照我个人认为合适的顺序分别介绍他们的安装与配置过程

1. MariaDB 的安装与初始配置

# yum 安装
yum -y install mariadb mariadb-server

# 安装完成MariaDB,首先启动MariaDB
systemctl start mariadb
# 设置开机启动
systemctl enable mariadb

# 接下来进行MariaDB的相关简单配置
mysql_secure_installation

#首先是设置密码,会提示先输入密码
Enter current password for root (enter for none):# 初次运行直接回车

#设置密码
Set root password? [Y/n] # 是否设置root用户密码,输入y并回车或直接回车
New password: # 设置root用户的密码
Re-enter new password: # 再输入一次你设置的密码

#其他配置
Remove anonymous users? [Y/n] # 是否删除匿名用户
Disallow root login remotely? [Y/n] #是否禁止root远程登录
Remove test database and access to it? [Y/n] # 是否删除test数据库
Reload privilege tables now? [Y/n] # 是否重新加载权限表

#初始化MariaDB完成,接下来测试登录
mysql -uroot -ppassword

2. PHP7 + PHP-FPM 安装

# 在centos7通过yum安装PHP7,首先在终端运行:
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

# 提示错误:
error: Failed dependencies:
epel-release >= 7 is needed by webtatic-release-7-3.noarch

# 需要先安装epel-release。
yum -y install epel-release 

# 再安装PHP7
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm # 获取PHP7的yum源
yum install php70w php70w-fpm

# 验证安装
PHP -v,

# 显示当前PHP版本,信息如下:
[root@Ryoma /]# php -v
PHP 7.0.18 (cli) (built: Apr 15 2017 07:09:11) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

# 这样就在CentOS 7下通过yum安装成功PHP7.

3. 编译安装 Nginx 并配置 PHP

# [必须]安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++

# [必须]PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel

# [自选]zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel

# [自选]nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel

# 官网下载 Ngxin
# 直接下载.tar.gz安装包,地址:https://nginx.org/en/download.html
# 推荐选择稳定版下载 : 当前版本 1.12.2
# 下载链接: https://nginx.org/download/nginx-1.12.2.tar.gz
wget -c https://nginx.org/download/nginx-1.12.2.tar.gz

# 解压 用到了之前下载的zlib库 若没下载可选择其他方式解压
tar -zxvf nginx-1.12.2.tar.gz

# 编译前初始化配置
cd nginx-1.12.2 # 进入nginx目录
./configure # 使用默认配置

# 编译安装
make
make install

# 查找安装路径
[root@Ryoma nginx-1.12.2]#whereis nginx
nginx: /usr/local/nginx

# 启动、停止 nginx
cd /usr/local/nginx/sbin/ # 进入 nginx sbin 目录
./nginx # 启动 nginx
./nginx -s quit # 此方式停止步骤是待 nginx 进程处理任务完毕进行停止
./nginx -s stop # 此方式相当于先查出 nginx 进程id再使用kill命令强制杀掉进程
./nginx -s reload # 重新加载

#查询 nginx 进程:
ps aux|grep nginx

# 配置 nginx
vim /usr/local/nginx/conf/nginx.conf
# 个人配置图如下

nginx配置

4. 安装 ThinkPHP5

# 全局安装 composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

# tp5 5.1 版本安装
composer create-project topthink/think  tp5  --prefer-dist
# PHP版本低于5.6的话 将仍然安装5.0版本
目录
相关文章
|
7天前
|
存储 应用服务中间件 nginx
nginx反向代理bucket目录配置
该配置实现通过Nginx代理访问阿里云OSS存储桶中的图片资源。当用户访问代理域名下的图片URL(如 `http://代理域名/123.png`)时,Nginx会将请求转发到指定的OSS存储桶地址,并重写路径为 `/prod/files/2024/12/12/123.png`。
38 5
|
23天前
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
43 3
|
1月前
|
负载均衡 监控 应用服务中间件
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
59 4
|
1月前
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
56 3
|
1月前
|
安全 应用服务中间件 网络安全
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
109 3
|
NoSQL 关系型数据库 MySQL
阿里云RDS关系型数据库大全_MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等
阿里云RDS关系型数据库如MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等,NoSQL数据库如Redis、Tair、Lindorm和MongoDB
339 0
|
4月前
|
关系型数据库 Java MySQL
Linux安装JDK1.8 & tomcat & MariaDB(MySQL删减版)
本教程提供了在Linux环境下安装JDK1.8、Tomcat和MariaDB的详细步骤。这三个组件的组合为Java Web开发和部署提供了一个强大的基础。通过遵循这些简单的指导步骤,您可以轻松建立起一个稳定、高效的开发和部署环境。希望这个指导对您的开发工作有所帮助。
245 8
|
5月前
|
缓存 关系型数据库 MySQL
error: Failed dependencies: mariadb-connector-c-config is obsoleted by mysql-community-server-8.0.36-1.el7.x86_64 问题解决
error: Failed dependencies: mariadb-connector-c-config is obsoleted by mysql-community-server-8.0.36-1.el7.x86_64 问题解决
298 19
|
4月前
|
SQL 关系型数据库 MySQL
如何在 MySQL 或 MariaDB 中导入和导出数据库
如何在 MySQL 或 MariaDB 中导入和导出数据库
631 0
|
4月前
|
SQL Ubuntu 关系型数据库
如何在云服务器上创建和管理 MySQL 和 MariaDB 数据库
如何在云服务器上创建和管理 MySQL 和 MariaDB 数据库
60 0