Nginx 给虚拟主机配置pathinfo 与 rewrite 支持

admin9年前技术文档1863

1。首先在usr/local/nginx/conf/下创建pahtinfo.conf文件   然后在这个文件中添加以下内容
    vi /usr/local/nginx/conf/pathinfo.conf

set $real_script_name $fastcgi_script_name;  #定义变量 $path_info ,用于存放pathinfo信息
if ($fastcgi_script_name ~ "(.+?\.php)(/.*)")  #定义变量 $real_script_name,用于存放真实地址
{
    set $real_script_name $1;  #将文件地址赋值给变量 $real_script_name
    set $path_info $2;         #将文件地址后的参数赋值给变量 $path_info
}
 #配置fastcgi的一些参数
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;  
fastcgi_param SCRIPT_NAME $real_script_name;
fastcgi_param PATH_INFO $path_info;

  
2.    vi /usr/local/php/etc/php.ini 将cgi.fix_pathinfo=0 修改为cgi.fix_pathinfo=1  (此步不可少)

     [ 注,上两行黄色背景的,不用修改也可以。目前本人不知道是干什么用的。]     保存退出;


5。配置rewrite(thinkphp重写)    先设置URL_MODE为2(1 pathinfo ,2rewrite, 3兼容)

    然后在vhost里面对应的配置文件中的access.log上面加上以下:---->可选

location / { 
   if (!-e $request_filename) { 
       rewrite  ^(.*)$  /index.php?s=$1  last; 
       break;   
   } 
}


6。重启nginx服务,/etc/init.d/nginx restart
     即可支持;

分享到:

相关文章

PHP开发之THINKPHP多表联合查询操作的三种方法

THINKPHP 中关联查询(多表查询)可以使用 table() 方法或和join方法,请看示例: 联合查询     &n...

php 获取客户端的ip、地理信息、浏览器信息、本地真实ip

<?php  // 作用取得客户端的ip、地理信息、浏览器http://blog.qita.in  class get_gust_info ...

svn: E210007: Cannot negotiate authentication mechanism

> 问题描述:svn: E210007: Unable to connect to a repository&nb...

PHPStorm 2018.2激活教程 最新的(三种)

一、第一种激活方式:破解补丁(此方式有效期到2100年)2018.8.15更新最新破解补丁JetbrainsCrack-3.1-release-enc.jar百度云下载地址:https://pan.b...

Nginx反向代理Google扩展ngx_http_google_filter_module

Nginx反向代理Google扩展ngx_http_google_filter_module

模块介绍ngx_http_google_filter_module 是一个过滤器模块,能够让谷歌镜像更便捷的部署。内建了正则表达式、URI locations和其他复杂的配置。原生nginx模块确保了...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。