zoukankan      html  css  js  c++  java
  • nginx、TP框架实现兼容pathinfo和rewrite两种url访问方式

    环境:centos7,yum安装的nginx1.10、php-fpm,tp3.2 
    本方法只需要配置nginx.conf的一个文件就可以支持pathinfo和rewrite两种url访问方式

    vim /etc/nginx/nginx.conf
    • 1

    1、支持rewrite方式: 
     location / 处添加以下代码

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

    最终变成

    location / {
                root   html/code;
                index  index.php index.html index.htm;
                if (!-e $request_filename) {
                    rewrite  ^(.*)$  /index.php?s=$1  last;
                    break;
                }
            }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2.实现pathinfo模式 
    找到有效的 location ~ .php$那部分 
    首先,将这个$去掉, 
    然后里面添加以下两行代码

    fastcgi_split_path_info ^(.+.php)(.*)$;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    • 1
    • 2

    最终变成

    location ~ .php {
                root           html/code;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_split_path_info ^(.+.php)(.*)$;
                fastcgi_param PATH_INFO $fastcgi_path_info;         
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    3.重启nginx和php-fpm即可使用了

    service nginx restart
    service php-fpm restart
  • 相关阅读:
    HDU-1225 Football Score
    HDU-3854 LOOPS
    HDU-3863 No Gambling
    poj-2096 Collecting Bugs
    HDU-4336 Card Collector
    HDU-4405 Aeroplane chess
    2010上交:最小面积子矩阵
    VijosP1443:银河英雄传说
    VijosP1250:分组背包
    Vijos1221:神秘的配方
  • 原文地址:https://www.cnblogs.com/ruiy/p/8889282.html
Copyright © 2011-2022 走看看