安装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 安装PHP开发环境

CentOS 7 安装PHP7+Nginx+Mysql5.7开发环境的更多相关文章

  1. nginx php-fpm安装配置 CentOS编译安装php7.2

    CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...

  2. 安装Nginx+Lua+OpenResty开发环境配置全过程实例

    安装Nginx+Lua+OpenResty开发环境配置全过程实例 OpenResty由Nginx核心加很多第三方模块组成,默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用. ...

  3. CentOS6.5安装php7+nginx+mysql实现安装WordPress

    安装php7+nginx参考该博客http://blog.csdn.net/whatday/article/details/50645117 安装php7参考http://blog.csdn.net/ ...

  4. nginx+uwsgi+django开发环境搭建

    Nginx+uWSGI+Djangoi开发环境搭建 Django简介,环境搭建 uWSGI简介,安装与配置 Nginx安装与配置 Nginx+uWSGI+Django原理解析 1.django简介,环 ...

  5. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  6. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  7. 安装Golang 1.6及开发环境

    安装Golang 1.6及开发环境=====================================> 下载软件    * go1.4.2.linux-amd64.tar.gz     ...

  8. CentOS安装PHP7+Nginx+MySQL

    本文属于动手搭建PHP开发环境的一部分,更多点击链接查看. 本文以centos6为例.命令部分均省略sudo命令. 安装PHP 下载 http://cn2.php.net/distributions/ ...

  9. CentOS6编译安装PHP7+Nginx

    本文属于动手搭建PHP开发环境的一部分,更多点击链接查看. 本文以centos6为例. 安装PHP 下载 http://cn2.php.net/distributions/php-5.6.22.tar ...

随机推荐

  1. JAVA课程设计——植物大战僵尸(团队)

    1.团队名称.团队成员介绍 团名:嗷嗷嗷嗷嗷 吴军霖(组长) 写得一手好代码也改得一手好bug 代码整洁好看源于强迫症 大概没有什么不会的东西叭 真正的王者段位 欧阳震霆(组员) 同样擅长写代码 在青 ...

  2. 代码托管平台(Git)

    1,可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS社区.GitHub真正 迷人的是它的创新能力与Geek精神,这些都是无法模 ...

  3. ActiveMQ+Zookeeper集群配置文档

    Zookeeper + ActiveMQ 集群整合配置文档 一:使用ZooKeeper实现的MasterSlave实现方式 是对ActiveMQ进行高可用的一种有效的解决方案, 高可用的原理:使用Zo ...

  4. BZOJ4484 JSOI2015最小表示(拓扑排序+bitset)

    考虑在每个点的出边中删除哪些.如果其出边所指向的点中存在某点能到达另一点,那么显然指向被到达点的边是没有用的.于是拓扑排序逆序处理,按拓扑序枚举出边,bitset维护可达点集合即可. #include ...

  5. MFC 相关类、函数

    timeSetEvent()函数 CRectTracker类的使用 SetLocalTime设置本地时间 AdjustTokenPrivileges启用权限

  6. POJ3623 Best Cow Line, Gold 【后缀数组】

    最好的牛线,金 时间限制: 5000MS   内存限制: 65536K 提交总数: 5917   接受: 2048 描述 FJ即将把他的ñ(1≤ ñ ≤30,000)头牛竞争一年一度的"年度 ...

  7. [poj 2342]简单树dp

    题目链接:http://poj.org/problem?id=2342 dp[i][0/1]表示以i为根的子树,选或不选根,所能得到的最大rating和. 显然 dp[i][0]=∑max(dp[so ...

  8. linux启动一个web项目时验证码不能出现的问题的解决

    解决方法: 在tomcatcatalina.sh中搜索cygwin=false,然后在它的上面加上这句话JAVA_OPTS='-Djava.awt.headless=true' 具体参考如下图片: 然 ...

  9. json获取属性值的方式

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript(Standard ECMA-262 ...

  10. java的GC与内存泄漏

    从诞生至今,20多年过去,Java至今仍是使用最为广泛的语言.这仰赖于Java提供的各种技术和特性,让开发人员能优雅的编写高效的程序.今天我们就来说说Java的一项基本但非常重要的技术内存管理 了解C ...