CentOS 7 安装PHP7+Nginx+Mysql5.7开发环境
安装PHP&PHP-FPM
首先更新一下CentOS7系统,对系统软件做一下升级,这里不升级内核。
//使用root权限,注意这里使用upgrade,而不是update(它会升级内核,这里我们不需要)
yum upgrade
我需安装最新的PHP,默认源安装的PHP版本是5.4左右,差不多已经过时了,这里先安装新的源。
//安装源
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm //安装PHP和PHP-FPM
yum install php71w php71w-cli php71w-fpm
//安装相关扩展
yum install php71w-mbstring php71w-common
yum install php71w-gd php71w-mcrypt
yum install php71w-mysql php71w-xml
yum install php71w-soap php71w-xmlrpc
安装Nginx
Nginx是当下流行Web服务器软件,需要用它提供Web服务配置站点等。可选的还有Apache、Lighttpd等。
//安装nginx
yum install nginx
//启动nginx
systemctl start nginx
//使用systemctl设置开机启动
systemctl enable nginx
根据之前设置的网络,可以直接在Mac浏览器里面访问http://192.168.56.101:80看nginx是否已经启动。我发现并不能访问成功,这里是CentOS7的防火墙导致的,打开80端口
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --reload
重试,显示nginx欢迎页面,Nginx设置成功。
安装MySQL
MySQL是关系型数据库软件,用来存储数据。安装MySQL只需要简单的指令,最新版本是5.7所以先安装最新的源。
//安装MySQL源
yum install https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm //安装MySQL
yum install mysql-community-server //启动MySQL
systemctl start mysqld
//设置开机启动
systemctl enable mysqld //找到随机生成的密码
grep 'temporary password' /var/log/mysqld.log
//登录mysql(需要上面的密码)
mysql -uroot -p'xxxx'
//更改密码,密码要求大写字母、小写字母以及数字和特殊符号
alter user 'root'@'localhost' identified by 'Qw.123456';
MySQL安装完成。
如果登陆碰到以下问题:
ERROR 1045(28000): Access denied for user 'root'@'localhost' (using password: NO)
请修改my.cnf,添加skip-grant-tables和skip-networking:
shell > vi /etc/my.cnf
[mysqld]
skip-grant-tables
skip-networking
重启mysql,然后重复以上修改密码步骤即可,记得修改完后,去掉my.cnf添加的两行。
设置Nginx和PHP-FPM
我已经安装好需要程序,要想PHP请求被Nginx接收并转交给PHP-FPM再由PHP解释器执行返回结果,还需要做一些配置。
//启动PHP-FPM
systemctl start php-fpm
//设置开机启动
systemctl enable php-fpm
配置nginx站点(test.com为你的域名):
vi /etc/nginx/conf.d/test.com.conf
//写入以下内容
server {
listen ;
server_name test.com;
root /usr/share/nginx/html;
index index.php index.html; location / {
try_files $uri $uri/ /index.php?$query_string;
} location ~ \.php$ {
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
} //重启Nginx
systemctl restart nginx //在/usr/share/nginx/html增加phpinfo.php文件写入以下内容
<?php phpinfo();
打开Mac的浏览器输入http://test.com/phpinfo.php就可以看到PHP的信息了。如果报403,说明没有权限,试着设置文件路径的权限chmod 777 -R/usr/share/nginx/html.
如果设置之后还报File not found,那可能是SELinux限制了访问,修改相关配置关闭SELinux。
vi /etc/sysconfig/selinux
SELINUX=disabled
//重启系统
reboot
刷新浏览器,PHP信息的页面正常展示。 到此PHP环境就搭建OK了。
CentOS 7 安装PHP7+Nginx+Mysql5.7开发环境的更多相关文章
- nginx php-fpm安装配置 CentOS编译安装php7.2
CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...
- 安装Nginx+Lua+OpenResty开发环境配置全过程实例
安装Nginx+Lua+OpenResty开发环境配置全过程实例 OpenResty由Nginx核心加很多第三方模块组成,默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用. ...
- CentOS6.5安装php7+nginx+mysql实现安装WordPress
安装php7+nginx参考该博客http://blog.csdn.net/whatday/article/details/50645117 安装php7参考http://blog.csdn.net/ ...
- nginx+uwsgi+django开发环境搭建
Nginx+uWSGI+Djangoi开发环境搭建 Django简介,环境搭建 uWSGI简介,安装与配置 Nginx安装与配置 Nginx+uWSGI+Django原理解析 1.django简介,环 ...
- Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试
Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...
- 搭建windows环境下(nginx+mysql+php)开发环境
搭建windows环境下(nginx+mysql+php)开发环境 1. 所需准备应用程序包 1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...
- 安装Golang 1.6及开发环境
安装Golang 1.6及开发环境=====================================> 下载软件 * go1.4.2.linux-amd64.tar.gz ...
- CentOS安装PHP7+Nginx+MySQL
本文属于动手搭建PHP开发环境的一部分,更多点击链接查看. 本文以centos6为例.命令部分均省略sudo命令. 安装PHP 下载 http://cn2.php.net/distributions/ ...
- CentOS6编译安装PHP7+Nginx
本文属于动手搭建PHP开发环境的一部分,更多点击链接查看. 本文以centos6为例. 安装PHP 下载 http://cn2.php.net/distributions/php-5.6.22.tar ...
随机推荐
- Eclipse下JRebel6.5.0热部署插件安装、破解及配置
发现一个问题:如果安装了jRebel,但是并未对项目添加jRebel监听时,如果重写jar包中的类, 虽然重写后的类会得到编译(classes中的class已经是修改后的class),但是并不会调用重 ...
- Jekyll 使用入门
Jekyll 是一个网站生成工具,可以用来将带有一定格式的文本(如:MarkDown)转换成静态的HTML页面, 并提供了Liquid模板引擎进行页面渲染,然后可以将生成的静态网站发布到如 Githu ...
- servletContex.getRealPath 获取的是拼接后的地址 是虚假的
servletContex.getRealPath 获取的是拼接后的地址 是虚假的
- 详解npm的模块安装机制
详解npm的模块安装机制 依赖树表面的逻辑结构与依赖树真实的物理结构 依赖树表面的逻辑结构与依赖树真实的物理结构并不一定相同! 这里要先提到两个命令:tree -d(linux)和npm ls(npm ...
- 【心情】HNOI2018游记
Day 0. 全机房的人好像都在做题.然而下午是社团节的游园会,身为社干的我风风雨雨在外面各种搬凳子搬椅子换场地招待外校同学……就这样我好像什么都没有复习. 晚上就一起去酒店了.大概因为是高一的缘故, ...
- 【ZJ选讲·钻石游戏】
N×M的棋盘(M,N<=500)中,每个格子有一个颜色(颜色数1~9) P次操作(P<=1000),每次给出两个相邻的位置(保证颜色不同,两个格子有一条公共边),把这两个格子交换. 定 ...
- 你对javascript的原生操作或者工具了解多少呢?
1.有一个长度未知的数组a,如果它的长度为0就把数字1添加到数组里面,否则按照先进先出的队列规则让第一个元素出队. 分析:这道题主要是考核了数组的队列方法和栈方法.另外,原题还有字数限制的,只有在字数 ...
- Codeforces Round #350 (Div. 2) C
C. Cinema time limit per test 2 seconds memory limit per test 256 megabytes input standard input out ...
- ActiveMQ(2) ActiveMQ创建HelloWorld
启动ActiveMQ: 请参见:ActiveMQ(1) 初识ActiveMQ 创建Maven工程: pom文件: <project xmlns="http://maven.apache ...
- 我们用CloudStack做什么
原文地址:http://www.sdfengxi.com/?p=376 我想很多同学会有类似的疑问,就是我配置好了CloudStack或者OpenStack之类的环境之后能够提供什么服务或者应用呢?下 ...