阿里云ECS每天一件事D8:nginx1.7整合php5.4

nginx本身的并不能解析php或者jsp,要转发给后端的php或者tomcat以及其他类似的应用程序服务器来提供服务。

首先我需要完成的配置是实现与php的整合,典型的配置信息如下:

 server {
listen ;
server_name domain;
root /data/web/domain; location ~ \.php($|/) {
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:; fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
} if (!-e $request_filename) {
rewrite ^/(.*)$ /error.php?a1=$&a2=$&a3=$ last;
rewrite ^/(.*)$ /index.php/$ last;
break;
} location ~* \.(gif|jpg|png)$ {
access_log off;
expires 4h;
} location ~ /\.ht {
deny all;
}
}

解释:

Line6-Line15:典型的php转发配置,将php请求,fastcgi方式转发至9000端口的php-fpm监听程序处理;

Line17-Line21:CI框架的特殊配置重写规则,即当文件不存在时,转发至CI的首页处理。此段配置,务必在Line15行之后。前段时间,一直将这两段分数搞反了,以至于很长一段时间,CI运行都不正常,只能识别出默认的路由,或者就是404,或者就是转发到默认路由。

上一篇:导出Mysql数据库中的数据


下一篇:C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(下)