码迷,mamicode.com
首页 > Web开发 > 详细

nginx1.8.0配置(搭配Centos6.5+Nginx+php5.6的续章)。

时间:2016-01-07 20:06:53      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:

由于在《搭配Centos6.5+Nginx+php5.6》文章中没提到nginx的一些常用配置,写个续章
nginx的支持php配置来源自iteye的文章,http://ears.iteye.com/blog/1896542 在此感谢
1.使nginx支持php
     1).在nginx.conf中的server下添加如下内容,SCRIPT_FILENAME后是你的nginx目录
  技术分享
  2). 然后重启php-fpm和nginx(支持原理是让文件结尾为php的请求,发送到9000端口,而9000端口是php-fpm的默认端口 ps:可以更改)
  技术分享
  3).然后在nginx的html目录下写文件为index.php,在里面写phpinfo()查看是否可解析
   技术分享具体到哪个目录要看你的配置,nginx默认访问目录在html下
   技术分享
   技术分享
7.更改php-fpm的配置
     一般安装php后都会更改php的配置,因为有的会报错,比如date.timezone,
  技术分享
  而php-fpm安装后它的php.ini文件是需要自己移动的,下面我们就开始做吧
  1).打印phpinfo,查看php.ini需要存放的位置
  技术分享
  2).回到php编译文件目录(ps:注意是你编译的php-fpm的那个目录!)
  技术分享
  复制这个文件(ps:如果没有这个文件的话你可能进错目录)
  技术分享
  
     4).然后让我们改一个东西来验证是否有效吧
          打开它,并修改其中的date.timezone
   技术分享
  5).重启php-fpm(ps:重启nginx是没用的,原因在上面已经解释了)
   技术分享
  6).再看PHPinfo(),搜索date.timezone,是不是已经好了呢?
  技术分享
    并且loaded configuration file也载入了技术分享
2.增加nginx虚拟主机(ps:原本想写个参考链接的,但是那个文章我测试好多遍都无法过.....)
     1).进入nginx的conf目录 cd /usr/local/nginx/conf 技术分享
   2).由于nginx默认是没有vhost文件的,需要自己创建,当然这个创建的名称你可以自己选择,但一般都会创建为vhost mkdir vhost 技术分享
 
   3).打开nginx.conf配置文件,并写入如下命令(ps:注意是在http下)
  技术分享
     4).在vhost文件下配置文件(创建一个格式为www.xxx.com.conf类似的文件名,一般都是这样命名)
     说个很逗的事情...创建文件是touch之类的,笔者在这里创建vhost的时候顺手mkdir www.xx.com.conf....然后保存配置就出现 is a directory错误...,一旦出现这种错误就是你的配置时需要写在文件中,而不是目录...如下图
  技术分享
  键入如下代码
  
技术分享
 1      server {
 2   listen 80;
 3   server_name www.xxx.com;
 4   #charset koi8-r;
 5 
 6   #access_log logs/host.access.log main;
 7   root /home/www-data/www.xxx.com; #请求的目录 ps :一般来说都会为nginx,mysql,php分配独立的用户,root权限太高
 8 
 9   error_page 404 /404.html;
10 
11   # redirect server error pages to the static page /50x.html
12   #
13   error_page 500 502 503 504 /50x.html;
14   location = /50x.html {
15 
16   }
17 
18 #默认请求
19 location / {
20   if (!-e $request_filename) {
21   rewrite ^/(.*)$ /index.php/$1 last;
22   break;
23   }
24   index index.php index.html;
25 }
26 #请求包含.php
27 location ~ .+\.php($|/) {
28   fastcgi_pass 127.0.0.1:9000;
29   fastcgi_index index.php;
30   include fastcgi_params;
31   set $real_script_name $fastcgi_script_name;
32   if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
33   set $real_script_name $1;
34   set $path_info $2;
35   }
36   fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
37   fastcgi_param SCRIPT_NAME $real_script_name;
38   fastcgi_param PATH_INFO $path_info;
39 }
40 
41   # 让客户端(浏览器)缓存图片30天
42   #location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
43   #{
44   # expires 30d;
45   #}
46 
47   # 让客户端(浏览器)缓存JS和CSS文件1小时
48   #location ~ .*\.(js|css)?$
49   #{
50   # expires 1h;
51   #}
52      }
View Code

  5).在本机上hosts将域名指向nginx服务器的ip(或者直接curl 你的域名)

  技术分享

  

     ps:这个域名是nginx服务器的虚拟域名(有域名的请无视这句话)
     在虚拟域名的设置目录下写一个index.php文件,然后写入phpinfo();
  技术分享
  如果访问域名能出现phpinfo,证明成功了

nginx1.8.0配置(搭配Centos6.5+Nginx+php5.6的续章)。

标签:

原文地址:http://www.cnblogs.com/iksjweb/p/5110756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!