【IT专家】nginx环境下配置支持php5.6(nginx+PHP)

合集下载

在nginx上配置php环境

在nginx上配置php环境

在nginx服务器上配置php环境
一、安装nginx
传统的编译安装nginx很麻烦,这里就不多介绍了(我安装过几次,总是安装不成,主要是缺少nginx的安装类库)
使用yum安装nginx
CentOS 5以上的版本都自带了yum。

所以不用麻烦,再安装yum。

使用yum安装,首先必须确定你的电脑能联网。

不然就会报错。

更新系统内核到最新:(大概188个,耗时最少20几分钟)
由于centos没有默认的nginx软件包,需要启用REHL的附件包
设置开机启动
二、安装php
可以用yum安装
也可以用php安装包进行安装,我用的是php-5.3.2.tar.gz
下面来安装php的扩展库:
三、安装mysql
下面来安装mysql的扩展库:
也可以用mysql安装包进行安装
四、开始工作
1、重新启动电脑
2、访问:http://localhost/ (你安装的电脑)
3、如果出现welcome to nginx on epel! 说明nginx 安装成功。

4、在/sur/share/nginx/html 下建立项目
5、在这之前必须修改配置文件nginx.cof
在index中加入index.php
去掉前面的所有#即可。

(如果不行就按照上面的配置)
6、哦,还得先开启php-cgi
在/etc/rc.local中加入php-cgi -b 9000 –q
重新启动计算机就OK。

五、现在正真的可以开始工作了
建立项目,自己开始测试哦。

PHP5.6中php-fpm的配置,启动,停止和重启

PHP5.6中php-fpm的配置,启动,停止和重启

该文主要讲述:如何配置php-fpm、常见报错解决方法和php-fpm的启动、关闭和重启。

LNMP环境中的nginx是不支持php的,需要通过fastcgi插件来处理有关php的请求。

而php需要php-fpm这个组件提供该功能。

在php5.3.3以前的版本php-fpm 是以一个补丁包的形式存在的,而php5.3.3以后只需在编译安装时使用–enable-fpm加载该模块即可,无需另行安装。

[root@localhost php-5.6.25]# /usr/local/php/sbin/php-fpm[29-Aug-2016 17:36:05] ERROR: failed to open configuration file'/usr/local/php/etc/php-fpm.conf': No such file or directory (2)[29-Aug-2016 17:36:05] ERROR: failed to load configuration file'/usr/local/php/etc/php-fpm.conf'[29-Aug-2016 17:36:05] ERROR: FPM initialization failed启动php-fpm发现缺乏配置文件/usr/local/php/etc/php-fpm.conf此时只需复制php-fpm的配置文件在安装php时提供的配置文件的模版/usr/local/php/etc/php-fpm.conf.default到相应目录下即可,此处有两种方法,均可提供配置文件,即分别将末班复制到/usr/local/php/etc/或者/usr/local/etc/并重命名为php-fpm.conf①[root@localhost etc]# cd /usr/local/php/etc/[root@localhost etc]# lspear.conf php-fpm.conf.default[root@localhost etc]# cp /usr/local/php/etc/php-fpm.conf/usr/local/etc/php-fpm.conf利用/usr/local/php/sbin/php-fpm启动FPM[root@localhost etc]# /usr/local/php/sbin/php-fpm②[root@localhost etc]# cp php-fpm.conf.default php-fpm.conf[root@localhost etc]# /usr/local/php/sbin/php-fpm至此php-fpm配置完成,鉴于fpm是置于PHP和Nginx之间的一层应用,所以配置成服务开机自启。

Windows下Nginx+PHP5(FastCgi),memcache安装配置详解

Windows下Nginx+PHP5(FastCgi),memcache安装配置详解

Nginx作为一款支持PHP的轻量级WEB服务器,在PHP网站建设中收到越来越多的应用,最近在Windows平台上安装配置了Nginx+PHP5的运行环境,非常方便,现详细介绍下Windows下Nginx 配置PHP5的基础教程,Nginx配置PHP是以FastCgi方式配置的。

下载NginxNginx可以在多种操作系统上安装配置,我使用的是Windows,所以需要下载Nginx Windows版本,点击下载Nginx。

我下载的是nginx/Windows-0.8.53版本。

安装Nginx下载完Nginx后,需要在Windows中安装Nginx,Nginx Windows版本的安装非常方便,只要解压缩后,将文件拷贝到C盘根目录下即可,我的Nginx安装目录为C:\nginx-0.8.53。

安装配置PHP我使用的是PHP5.2,你可以可以使用PHP5.3,只要PHP版本支持FastCgi方式(有php-cgi.exe)即可,PHP安装配置教程推荐参考:Windows7 IIS7下以FastCgi和ISAPI方法安装配置PHP5教程配置Nginx支持运行PHP首先需要打开C:\nginx-0.8.53,找到C:\nginx-0.8.53\conf目录下的nginx.conf,以记事本打开,配置Nginx支持PHP第一步设定error.log的存放目录,将#error_log logs/error.log;的#去处,默认error.log是存放在Nginx安装目录中logs目录下。

配置Nginx支持PHP第二步设定WEB服务器目录,类似于PHP.INI配置文件中的document_root,Nginx配置文件中的原有信息如下修改Nginx配置如下这里需要注意,路径分隔符请使用”/”而不要使用Windows中的”\”以防歧义。

配置Nginx支持PHP第三步在Nginx配置文件中找到1 2 3 4 5 6 7 8 9 10 11 1213#location ~ \.php$ {# root html;# fastcgi_pass 127.0.0.1:9000;# fastcgi_index index.php;# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name ; # include fastcgi_params;#} 去处#并添加WEB 目录,即 1 2 3 4 5 6 7 8 9 10 11 1213 location ~ \.php$ {root D:/PHPWeb;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME D:/PHPWeb$fastcgi_script_name;include fastcgi_params;}这里需要注意,需要将中的/scripts 修改为之前设定的WEB 目录,否则会报HTTP 404错误。

Nginx+php配置文件及原理解析

Nginx+php配置文件及原理解析

Nginx+php配置⽂件及原理解析采⽤nginx+PHP作为webserver的架构模式,在现如今运⽤相当⼴泛。

然⽽第⼀步需要实现的是如何让nginx正确的调⽤php。

由于nginx调⽤php并不是如同调⽤⼀个静态⽂件那么直接简单,是需要动态执⾏php脚本。

所以涉及到了对nginx.conf⽂件的配置。

这⼀步对新⼿⽽⾔⼀般需要⽹上查资料,对于⼀般的熟⼿⽽⾔,也有不少同学并没有搞透彻为何要如此这般配置。

本⽂的主要内容为如何在nginx server中正确配置php调⽤⽅法,以及配置的基本原理。

⼀、nginx+php运⾏原理:⾸先简单的讲⼀讲原理,⽬前主流的nginx+php的运⾏原理如下:1、nginx的worker进程直接管理每⼀个请求到nginx的⽹络请求。

2、对于php⽽⾔,由于在整个⽹络请求的过程中php是⼀个cgi程序的⾓⾊,所以采⽤名为php-fpm的进程管理程序来对这些被请求的php程序进⾏管理。

php-fpm程序也如同nginx⼀样,需要监听端⼝,并且有master和worker进程。

worker进程直接管理每⼀个php进程。

3、关于fastcgi:fastcgi是⼀种进程管理器,管理cgi进程。

市⾯上有多种实现了fastcgi功能的进程管理器,php-fpm就是其中的⼀种。

再提⼀点,php-fpm作为⼀种fast-cgi进程管理服务,会监听端⼝,⼀般默认监听9000端⼝,并且是监听本机,也就是只接收来⾃本机的端⼝请求,所以我们通常输⼊命令 netstat -nlpt|grep php-fpm 会得到:tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1057/php-fpm这⾥的127.0.0.1:9000 就是监听本机9000端⼝的意思。

4、关于fastcgi的配置⽂件,⽬前fastcgi的配置⽂件⼀般放在nginx.conf同级⽬录下,配置⽂件形式,⼀般有两种:fastcgi.conf 和 fastcgi_params。

设置安全的nginx+PHP网站目录权限

设置安全的nginx+PHP网站目录权限

断开 网 络 的 方 法 比较 多 , 最 简单 杀 毒 。在 杀 毒 时 , 建 议 用 户 先 对 杀 毒
程、 不 明程 序运 行 , 或 者 计 算 机 运 行
的办 法 就 是跑 到 电脑 后 面 拨下 网线 ,
软 件 进行 必 要 的设置 。 例 如 扫描 压 缩
速度 明显 变 慢 ,甚至 I E经 常 询 问是 这 也 是最 干 脆 的办 法。 不过 在 实 际 的 包 中的 文 件 、 扫 描 电子 邮件 等 , 同 时 否运 行 某 些 Ac t i v e X 控件 、调 试脚 本 应 用 中 ,我 们并 不 需 要这 样 麻 烦 , 毕 对 包含 病 毒 的文 件 处 理 方 式 , 例 如可 等。 那 么这 时 候 表示 此 时你 可 能 已经 竟 跑 到 电脑 后 面还 是 比较 烦 神 的 。 如 以 将 其 设 为 “ 清 除 病 毒 ”或 “ 隔离” , 中毒 了 。 果 安 装 了防 火 墙 , 可 以在 防 火墙 中直 而 不是 直 接 “ 删 除 文件 ” , 这样做的 目
安 全 咖 啡 屋
计 算 机 与 网 络 创 新 生 活 _哺 饲枷. 】 , I 曩 踊 l 嘲 曩
设置蜜垒 的 n 癣 n x +
基于 h n u x系 统 的 we b服 务 器 权 限 设 置 问题 ) 架构听说过 很 多年了 , 也 用 了 好 几 年 ,不 过 都 是 用 现 成 的 运 行 环 境 , 比如虚 拟主 机 、 共用 V P S 。 亲 手 配
配置权 限 的原 则 是 , 在 保 证 网 站正常运 行下 , 尽 量给最低 权限 。 我 的配置 :
这样 即使 网站被挂马 了 , 也 能 降 低 置 , 7 7 7也 是 最 便 捷 做 法 了 。 很 多损 失 , 例如 , 对 方 无 法 在 你 的

Nginx+PHP环境搭建

Nginx+PHP环境搭建

scp 安装包root@目标ip地址:存放路径一、安装Nginxgroupadd wwwuseradd -g www www -s /bin/falsecd /usr/local/srctar zxvf nginx-1.6.2.tar.gzcd nginx-1.6.2./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module--with-http_ssl_module --with-http_gzip_static_module--with-openssl=/usr/local/src/openssl-1.0.1j--with-zlib=/usr/local/src/zlib-1.2.8--with-pcre=/usr/local/src/pcre-8.36注意:--with-openssl=/usr/local/src/openssl-1.0.1j--with-zlib=/usr/local/src/zlib-1.2.8--with-pcre=/usr/local/src/pcre-8.36指向的是源码包解压的路径(不同的源码包是不一样的名字喔),而不是安装的路径,否则会报错makemake install/usr/local/nginx/sbin/nginx #启动Nginxcp /usr/local/nginx/sbin/nginx /etc/rc.d/init.d/nginxchmod 775 /etc/rc.d/init.d/nginx #赋予文件执行权限chkconfig nginx on #设置开机启动/etc/rc.d/init.d/nginx -s reload #重启在浏览器中打开服务器IP地址,会看到下面的界面,说明Nginx安装成功二、安装mysqltar xf mysql-5.0.41.tar.gz./configure --prefix=/usr/local/mysql --with-extra-charsets=all makemake installcp /usr/local/src/mysql-5.0.41/support-files/f /etc/f 创建数据库配置文件/usr/local/mysql/bin/mysql_install_db --user=mysql 数据库授权chown -R root /usr/local/mysqlchown -R mysql /usr/local/mysql/varchgrp -R mysql /usq/local/mysql/usr/local/mysql/bin/mysqld_safe --user=mysql & 用mysql用户启动数据库/usr/local/mysql/bin/mysql -uroot>set password for ‘root’@’localhost’=PASSWORD(‘******’); 设置mysql密码>exit/usr/local/mysql/bin/mysql -uroot -p root登录mysql数据库三、安装PHP1、首先要安装高版本的libxmltar xf libxml2-2.6.62.tar.gzcd libxml2-2.6.62./configuer --prefix=/usr/local/libxml2makemake install2、安装PHPtar xf php-5.6.13.tar.bz2cd php-5.6.13./configuer --prefix=/usr/local/php--with-config-file-path=/usr/local/php/etc/ --with-mysql=/usr/local/mysql--with-libxml-dir=/usr/local/libxml2-enable-fpm出现错误:error:cannot find mysql header files under解决办法:因为没找mysql的安装目录添加--with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config--with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql=/usr/local/mysql出现错误:make:***[ext/openssl/oenssl.lo] Error 1解决办法:去掉参数 --with-openssl出现错误:configure: error: libjpeg.(a|so) not found.解决办法:yum install libjpeg-devel*\cp -frp /usr/lib64/libjpeg* /usr/lib/makemake install或者 yum install php-fpm*cp php.ini-production /usr/local/php/etc/php.ini #复制php配置文件到安装目录rm -rf /etc/php.ini #删除系统自带配置文件ln -s /usr/local/php/etc/php.ini /etc/php.ini #添加软链接到 /etc目录cp /usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf #拷贝模板文件为php-fpm配置文件ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf #添加软连接到/etc目录vi /usr/local/php/etc/php-fpm.conf #编辑大约149行---user = www #设置php-fpm运行账号为www大约150行---group = www #设置php-fpm运行组为www大约25行---pid = run/php-fpm.pid #取消前面的分号:wq! #保存退出设置 php-fpm开机启动cp /usr/local/src/php-5.6.3/sapi/fpm/init.d.php-fpm/etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限chkconfig php-fpm on #设置开机启动vi /usr/local/php/etc/php.ini #编辑配置文件找到:disable_functions =修改为:disable_functions =passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open, proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,rea dlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,po pen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport ,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_ge tpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,po six_ttyname,posix_uname#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

CentOS 7源码编译安装最新版php5.6和nginx1.7.9及mysql(搭建lnmp环境) – 飞嗨

CentOS 7源码编译安装最新版php5.6和nginx1.7.9及mysql(搭建lnmp环境) – 飞嗨

CentOS 7源码编译安装最新版php5.6和nginx1.7.9及mysql(搭建lnmp环境) –飞嗨突然,一不留神打开了网站,点了一下download,靠,都已经php5.6 stable了,而我yum安装的php还是5.4版本的,太守旧了!嘿嘿,我是微软云的小白鼠,当年就多注册了个账号,还躺着个云服务器在睡觉呢,于是乎,私心想着搭建一个lnmp的备份服务器…源码编译安装,各种依赖包纠结,所以呢,mariadb(mysql)是yum安装的,php5.6和nginx1.7.9是源码安装的…装着装着,在跑./configure脚本的时候,又忘记启用enable curl等等常用扩展鸟,装完后,又去源码目录编译扩展,动态添加扩展…lnmp一、安装mariadb(mysql)服务yum install mariadb mariadb-server mariadb-devel自从mysql被oracle公司收购后,mysql就有闭源收费的风险,所以,就有了社区版改装的mysql分支mariadb来规避这个风险。

centos7开始,yum源的mysql全部都替换成mariadb的了。

所以,mariadb是mysql的一个分支。

不过貌似听说,google有一部分数据库也都已经迁移到mariadb 了,真是要鄙视一下oracle公司,oracle数据库都这么赚了,还打着mysql的主意…二、源码编译安装php5.61.下载php5.6 wget/distributions/php-5.6.5.tar.gz纠结的是,刚安装好的centos 7连wget都木有,所以yum -y install wget然后再下载,,,2.解压tar -xvzf php-5.6.5.tar.gz 进入cd php-5.6.53.运行./configure脚本,启用需要的扩展模块,并指定php的安装目录 ./configure –enable-fpm –enable-mbstring–with-mysql=mysqlnd –with-mysqli=mysqlnd–with-pdo-mysql=mysqlnd这一步很是关键的,我忘记指定–prefix,它默认也是给我安装在/usr/local/php,不过还是指定一下比较妥当。

LNMP(linux+nginx+mysql+php)服务器环境配置

LNMP(linux+nginx+mysql+php)服务器环境配置

LNMP(linux+nginx+mysql+php)服务器环境配置一、简介Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了。

Igor Sysoev在建立的项目时,使用基于BSD许可。

在高并发连接的情况下,Nginx是Apache服务器不错的替代品。

Nginx同时也可以作为7层负载均衡服务器来使用。

Nginx 0.8.46 + PHP 5.2.14 (FastCGI) 可以承受3万以上的并发连接数,相当于同等环境下Apache的10倍。

Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网易新闻、腾讯网、搜狐博客等门户网站频道,六间房、等视频分享网站,Discuz!官方论坛、水木社区等知名论坛,盛大在线、金山逍遥网等网络游戏网站,豆瓣、人人网、YUPOO相册、金山爱词霸、迅雷在线等新兴Web 2.0网站。

为什么Nginx的性能要比Apache高得多?这得益于Nginx使用了最新的epoll (Linux 2.6内核)和kqueue(freebsd)网络I/O模型,而Apache则使用的是传统的select模型。

目前Linux下能够承受高并发访问的 Squid、Memcached都采用的是epoll网络I/O模型。

处理大量的连接的读写,Apache所采用的select网络I/O模型非常低效。

下面用一个比喻来解析Apache采用的select模型和Nginx采用的epoll模型进行之间的区别:假设你在大学读书,住的宿舍楼有很多间房间,你的朋友要来找你。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文由我司收集整编,推荐下载,如有疑问,请与我司联系nginx环境下配置支持php5.6(nginx+PHP)该文主要讲述在nginx环境下如何配置支持php5.6,主要分为三部分:配置安装PHP5.6.25,配置php-fpm组件,配置nginx支持PHP(请自行编译安装nginx) 1、配置安装PHP5.6.25
 [root@localhost share]# cp php-5.6.25.tar.gz/usr/local
 [root@localhost share]# cd /usr/local
 [root@localhost local]# tar -zvxf php-5.6.25.tar.gz
 [root@localhost local]# cd php-5.6.25
 [root@localhost php-5.6.25]# ./configure--prefix=/usr/local/php --enable-fpm
 要想使php支持php-fpm,只需要在编译的时候带上--enable-fpm 就可以了
 configure error xml2-config not found. pleasecheck your libxml2 installation
 编译时报以上错误,此时安装相关包再重新编译安装即可。

 [root@localhost php-5.6.25]# yum install libxml2
 [root@localhost php-5.6.25]# yum install libxml2-devel
 [root@localhost php-5.6.25]# ./configure--prefix=/usr/local/php --enable-fastcgi --enable-fpm
 [root@localhost php-5.6.25]# make
 [root@localhost php-5.6.25]# makeinstall
 Installing shared extensions:/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
 Installing PHP CLI binary: /usr/local/php/bin/
 Installing PHP CLI man page: /usr/local/php/php/man/man1/
 Installing PHP FPM binary: /usr/local/php/sbin/
 Installing PHP FPM config: /usr/local/php/etc/
 Installing PHP FPM man page: /usr/local/php/php/man/man8/
 Installing PHP FPM status page: /usr/local/php/php/php/fpm/。

相关文档
最新文档