nginx 프로젝트 에 대한 재 작성 규칙

1605 단어
TP 프로젝트 의 2 차 개발 을 다시 할 때 이러한 경로 분석 상황 을 만 났 습 니 다. nginx 설정 재 작성 규칙 이 필요 합 니 다.
  • 원래 의 경로
  • news/show_10_12.html news/index.php?m=index&a=show&catid=10&id=12
  • 대응 하 는 nginx 재 작성 규칙
  • location / {
        try_files $uri $uri/ /index.php?$query_string;
        #rewrite /news/show_(.+?)_(.+?)\.html$ /news/index.php?m=index&c=index&a=show&catid=$1&id=$2 last;
        rewrite    show_([0-9]+)_([0-9]+).html /news/index.php?m=index&c=index&a=show&catid=$1&id=$2 last;
        rewrite    list_([0-9]+)_([0-9]+).html index.php?m=index&c=index&a=lists&catid=$1&page=$2;
        rewrite    list_([0-9]+).html index.php?m=index&c=index&a=lists&catid=$1;
    }
    

    추천 하 다.
  • apache 회전 nginx 재 작성 규칙, 온라인 변환
  • TP 재 작성 설정
    루트 디 렉 터 리, ceshi, 프로젝트 폴 더 는 test 입 니 다.현재 의 상황 은 전체 tp 프로젝트 가 test 폴 더 아래 에 놓 여 있 습 니 다. ceshi 는 루트 디 렉 터 리 입 니 다. 정상 적 인 접근 /Home/index/index 이 필요 합 니 다. /test/Home/index/index 접근 /index.php?c=index&a=index 과 같은 효 과 를 얻 을 수 있 습 니 다.
        
     'URL_MODEL'             =>  2,       // URL    ,    0、1、2、3,        :
    // 0 (    ); 1 (PATHINFO   ); 2 (REWRITE    ); 3 (    )     PATHINFO   
    
    location / {
      if (!-e $request_filename){
        # test    ,        test/index.php      tp       。           test  
        rewrite  ^/test/(.*)$  /test/index.php?s=$1 last;   # (.*)      $1
       #    test    ,        test/index.php      tp       
       # /Home/index/index            ,      
        rewrite ^(.*)$ /test/index.php?s=$1 last;
       }
     }
    

    좋은 웹페이지 즐겨찾기