User-Profile-Image
hankin
  • 5
  • 日记
  • 新闻
  • 微博
  • 仓库
  • 音乐
  • 程序人生
    • python
    • php
    • mysql
    • linux
    • go
  • 关于我
    • 博主简介
  • 友情链接
    • 知向前端
Help?

Please contact us on our email for need any support

Support
    首页   ›   linux   ›   正文
linux

在Centos 中安装nginx+php+mysql

2020-05-15 16:10:07
436  0 4

一、 安装环境包

1、首先使用yum命令安装、升级所需的程序库。

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-server krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

2、yum安装mysql

先检查mysql是否安装:

rpm -qa | grep mysql

如果没有安装齐全执行下列yum

yum install mysql-bench mysql-test mysql-devel mysql-server mysql

3、yum安装prce

先检查prce是否安装:

rpm -qa | grep prce

如果没有安装执行下列yum

Yum install prce

二、 安装yum安装nginx

1、安装nginx的最新稳定版yum源

Nginx最新版yum源在EPEL RPM包中,wget下载安装即可

cd /root

wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

rpm –ivh epel-release-5-4.noarch.rpm

2、安装nginx

Yum install nginx

3、启动测试nginx

Service nginx restart

Nginx启动后有两个进程,master为主进程,worker为工作进程,如下

在启动完NGINX后,我们可以在浏览器中输入http://localhost查看,如下图

三、 编译安装php

这个地方是最重要的地方,因为默认情况下Nginx和PHP他俩之间是一点感觉没有的。在之前,很多朋友都搭建过Apache+PHP,Apache+PHP编译后生成的是模块文件,而Nginx+PHP需要PHP生成可执行文件才可以,所以要利用fastcgi技术来实现N ginx与PHP的整合,这个只要我们安装是启用FastCGI即可。此次我们安装PHP不仅使用了FastCGI,而且还使用了PHP-FPM这么一个东东,PHP-FPM说白了是一个管理FastCGI的一个管理器,它作为PHP的插件纯在,在安装PHP要想使用PHP-FPM时就需要把PHP-FPM以补丁的形式安装到PHP中,而且PHP要与PHP-FPM版本一致,这是必须的,切记!

首先我们把PHP和PHP-FPM下载到同一目录下,此次用的为php-5.2.14.tar.gz和php-5.2.14-fpm-0.5.14.diff.gz,下载到了同一目录下

#tar xvf php-5.2.14.tar.gz

#gzip -cd php-5.2.14-fpm-0.5.14.diff.gz | patch -d php-5.2.14 -p1

//将php-5.2.14-fpm-0.5.14.diff.gz以补丁形式加到php-5.2.14里面

#cd php-5.2.14

./configure –prefix=/usr/local/php –with-gd –with-jpeg-dir –with-png-dir –with-freetype-dir –with-mysql –enable-fastcgi –enable-fpm

注:Nginx+PHP整合,在安装时必须启用–enable-fastcgi和 –enable-fpm,这两个选项是做什么的上面已经描述。执行完后系统会提示–enable-fastcgi是一个未知选项,我们不必理会

#make && make install

#cp php.ini-dist /usr/local/php/etc/php.ini

下面我们就来启动PHP-FPM

#/usr/local/php/sbin/php-fpm start

在启动PHP-FPM时会报上面这个错误,原因是PHP-FPM自己不知道以那个用户和组运行PHP,所以我们要修改一个文件,把文件中的注释去掉即可(打开文件把红色部分删除),然后PHP-FPM会以nobody用户和组去运行PHP。

#vi /usr/local/php/etc/php-fpm.conf

#/usr/local/php/sbin/php-fpm start

#ps -aux | grep php

#echo “/usr/local/php/sbin/php-fpm start” >>/etc/rc.local

四、 整合Nginx与PHP

Nginx自己并不处理动态网页的请求,而且Nginx将得到的动态请求转交给PHP,下面我们打开Nginx的配置文件看一下

#vi /etc/nginx/nginx.conf //标的部分是我们后面要修改的

看上图,Nginx已经知道怎么把得到的请求传达给PHP,Nginx在得到*.php请求时,会把请求通过9000端口传给PHP。下面我们把这些注释给去掉即可,如下图

注:上面的/usr/share/nginx/html 是我们PHP网站放置的路径

  那么只有Nginx自己知道咋找PHP了还不行,还需要PHP知道咋找Nginx,PS:你见过大街上的JJMM约会时有不是相互认识对方,或者是不知道用啥方法和对方接头的?这点我们不需要担心,PHP-FPM已经在配置文件中定义了从哪接受PHP请求,我们可以打开配置文件看一下

#vi /usr/local/php/etc/php-fpm.conf
Linux下Nginx+PHP+MySQL
如上图所示,我们在前面已经看到过Nginx是通过本机的9000端口将PHP请求转发给PHP的,而上图我们可以看到PHP自己是从本机的9000端口侦听数据 ,Nginx与PHP通过本机的9000端口完成了数据请求。

五、测试

我们在nginx的配置文件里面已经定义了PHP网站的存放路径,默认路径为/usr/share/nginx/html下面我们在这个目录下新建一个PHP页面测试网页,文件名为index.php,内容如下vim /usr/share/nginx/index.php

重启PHP与nginx后(可以用杀死进程的方式关闭,然后在启动)我们在浏览器中输入http://localhost/index.php,出现php安装信息简介算成功

如本文“对您有用”,欢迎随意打赏作者,让我们坚持创作!

4 打赏
评论 (0)

点击这里取消回复。

欢迎您 游客  

doralf
28文章 3评论 0点赞 12558浏览

搜一搜,你想干啥
近期文章
  • Mac 配置 Docker 镜像加速
  • 在多个数组里面找出某个字段的不同值
  • cgi、fastcgi、php-cgi、php-fpm剖析
  • php.ini常用配置
  • 计算机下载
标签
centos cron docker github go javascript linux MySQL nginx php thinkphp
我的微信
交换友情链接

通过上面的二维码加我微信
然后把你的链接发过来
我这边会手动给你添加
交个朋友,多个链接
人生挺美好的 哈哈

微信公众号
  • 0
  • 0
  • 1
  • 1
  • 4,500
  • 3,121
  • 0
  • 0
Copyright © 2023 网站备案号: 皖ICP备2021013562号
主页
页面
  • 博主简介
博主
doralf 管理员
28 文章 3 评论 12558 浏览
测试
测试
赞赏作者

请通过微信、支付宝 APP 扫一扫

感谢您对作者的支持!

 支付宝 微信支付