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 ...
随机推荐
- lintcode-45-最大子数组差
45-最大子数组差 给定一个整数数组,找出两个不重叠的子数组A和B,使两个子数组和的差的绝对值|SUM(A) - SUM(B)|最大. 返回这个最大的差值. 注意事项 子数组最少包含一个数 样例 给出 ...
- linux下生成core dump文件方法
core 文件的简单介绍 当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,这种行为就叫做Core Dump(中文有的翻译成“核心转储”).我们可以认为 co ...
- Flink之状态之checkpointing
1.前言 在Flink中,函数和操作符都可以是有状态的.在处理每个消息或者元素时,有状态的函数都会储存信息,使得状态成为精密操作中关键的组成部分. 为了使状态能够容错,Flink会checkpoint ...
- Javascript中闭包常用场景
一.前言 有准备去看Javascript框架,所以对于Javascript和原型继承有必要去了解,这边小记一下闭包比较好的例子~ 二.正文 先来一下“闭包”的解释~ 一个拥有许多变量和绑定了这些变量的 ...
- SQL Server 使用分区函数实现查询优化
在项目中遇到一个需求,需要在商家收藏信息中,获取到该商家发布的最新一条商品的发布时间,需求很简单,SQL语句也不复杂, select T_UserCollectMerchant.CollectID,T ...
- Hibernate常用方法之_查询
1.使用session的get方法 public User getUser(int id){ Session session = null; User user = null; try { sessi ...
- P2168 [NOI2015]荷马史诗
题目描述 追逐影子的人,自己就是影子 ——荷马 Allison 最近迷上了文学.她喜欢在一个慵懒的午后,细细地品上一杯卡布奇诺,静静地阅读她爱不释手的<荷马史诗>.但是由<奥德赛&g ...
- CF115B Lawnmower
题目描述 You have a garden consisting entirely of grass and weeds. Your garden is described by an n×mn×m ...
- sql如何先排序再去重
场景 有一张得分表(score),记录了用户每次的得分,同一个人可能有多个得分. id name score 1 tom 45 2 jack 78 3 tom 34 . . . 需求:找出分数最高的前 ...
- Android webview “location.replace” 不起作用
js解决方法: function locationReplace(url){ if(history.replaceState){ history.replaceState(null, document ...