XAPMM Apache Rewrite url 리 셋 기능 의 간단 한 설정

4759 단어 nginxapache.

DocumentRoot G:\xampp\htdocs\web\centvjtqt\zhuanti
ServerName zhuanti.test.com
RewriteEngine on
RewriteRule ^/([a-zA-Z0-9]+)/$ /index.php?m=$1 [QSA,L]
RewriteRule ^/([a-zA-Z0-9]+)/([a-z0-9_]+)/$ /index.php?m=$1&a=$2 [QSA,L]



이상 은 가상 호스트 에 httpd - vhosts. conf 를 설정 합 니 다.
같은 기능 은 nginx 에서 다음 과 같이 설정 합 니 다.
vi virtual.conf
server {

       listen       80;
       server_name  zhuanti.test.com;
       charset utf-8;
       error_page  404              /404.html;
       error_page   500 502 503 504  /500.html;
       location / {
           root   /home/centv.com/zhuanti/;
           index  index.php index.html index.htm;
           if (!-f $request_filename){
                rewrite ^/([a-zA-Z_0-9]+)/$ /index.php?m=$1 last;
                rewrite ^/([a-zA-Z_0-9]+)/([0-9a-z_]+)/$ /index.php?m=$1&a=$2 last;
           }
       }
       location ~ .php$ {
           root           /home/centv.com/zhuanti/;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           include        fastcgi_params;

       }

   }

upload_max_filesize post_max_size max_execution_time client_max_body_size
가상 호스트 와 다른 방향 변경 요구 가 있 습 니 다:
각각 www. yuming. cn 과 www. yuming. cn / centvht / trunk / 방식 으로 방문 합 니 다.
server
{
    listen       80;  
    server_name  www.yuming.cn;  
    charset utf-8;

    location / {
 		root   /home/path/centvqt/zhuanti/;
        	index  index.php index.html index.htm;
  		if (!-f $request_filename){
  			rewrite ^/([a-zA-Z_0-9]+)/$ /index.php?m=$1 last;
  			rewrite ^/([a-zA-Z_0-9]+)/([0-9a-z_]+)/$ /index.php?m=$1&a=$2 last;
 		}
      }      
        
    location /centvht/trunk/ {
                root   /home/path/centvqt/zhuanti/;
                index  index.php index.html index.htm;
	        if (-e $request_filename) {   #      
		     break;
                }
                if (!-e $request_filename) {   #        
                     rewrite ^/(.+)$ /centvht/trunk/index.php?url=$1 last;
                     break;
                }      
      }

    location ~ \.php$
    {      
	root   /home/sobey/path/zhuanti/;
        #include vhosts/auth.inc;
        #fastcgi_pass unix:/tmp/php-fcgi.sock;
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index  index.php;  
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;  
        include        fastcgi_params; 
    }
    access_log  /var/log/nginx/xxbjjtv.centv.cn.log;
    client_max_body_size 50m;
}

다음http://www.jb51.net/article/24435.htm
1. Apache Rewrite 의 주요 기능 URL 의 이동 과 실제 주 소 를 숨 기 는 것 입 니 다. Perl 언어의 정규 표현 식 규범 을 기반 으로 합 니 다.평소에 우 리 를 도와 정적, 디 렉 터 리 작성, 도 메 인 이름 이동, 도 난 방지 등 을 실현 합 니 다. 2. Apache Rewrite 설정 Apache 의 Rewrite 설정 은 주로 두 가지 가 있 습 니 다. 하 나 는 전체 apache 서버 에 대한 설정 입 니 다. 이 설정 의 Rewrite 규칙 은 httpd. conf 에서 직접 작성 합 니 다.설정 절 차 는 다음 과 같 습 니 다. (1) httpd. conf 파일 의 '\ # LoadModule rewrite module modules / mod rewrite. so' 앞 에 있 는 '\ #' 번 호 를 제거 합 니 다. (2) 그리고 httpd. conf 에 다음 과 같은 규칙 을 작성 합 니 다. RewriteEngine on #t처음에. html 로 끝 나 는 파일 을 사용 할 때 $1 을 (. *) 와 일치 하 는 문자 로 교체 한 후 해당 test. php 페이지 에 방문 합 니 다. RewriteRule ^/t_(.*).html$ /test.php?id=$1 다른 하 나 는 apache 서버 의 한 디 렉 터 리 에 대한 설정 입 니 다. 이 설정 의 Rewrite 규칙 은 이 디 렉 터 리 아래 에 'htaccess 파일' 을 만들어 야 합 니 다.설정 절 차 는 다음 과 같 습 니 다. (1) httpd. conf 파일 의 '\ # LoadModule rewrite module modules / mod rewrite. so' 앞 에 있 는 '\ #' 번 호 를 제거 합 니 다. (2) httpd. conf 파일 의 'AllowOverride None' 을 'AllowOverride all' 로 수정 하 는 동시에 Options 도 'all' 로 설정 하 는 것 이 좋 습 니 다. 그렇지 않 으 면 문제 가 생 길 수 있 습 니 다. (3) 디 렉 터 리 에 htaccess 파일 을 만 들 고 메모 장 으로 열 어 다음 규칙 을 작성 합 니 다. RewriteEngine on RewriteRule ^/t_(.*).html$ /test.php?id=$1 3. Apache Rewrite 규칙 작성 RewriteEngine on RewriteRule ^/test([0-9]*).html$ /test.php?id=$1 RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R] RewriteEngine on #우리 가 방문 한 주소 가 www. 163. com 으로 시작 되 지 않 으 면 다음 규칙 을 실행 합 니 다. RewriteCond %{HTTP_HOST} !^www.163.com [NC] RewriteRule ^/(.*) http://www.163.com/ [L] 4. Apache Rewrite 규칙 수정자 1) R 외부 방향 변경 강제 2) F 는 URL 을 사용 하지 않 고 403 HTTP 상태 코드 를 되 돌려 줍 니 다. 3) G 는 URL 을 GONE 로 강제 하고 410 HTTP 상태 코드 를 되 돌려 줍 니 다. 4) P 는 프 록 시 리 트 윗 을 강제로 사용 합 니 다. 5) L 은 현재 규칙 이 마지막 규칙 임 을 나타 내 고 분석 후 규칙 의 재 작성 을 중단 합 니 다. 6) N 은 첫 번 째 규칙 부터 재 작성 과정 을 다시 실행 합 니 다. 7) C 는 다음 규칙 과 연결된다 규칙 이 일치 하면 정상적으로 처리 합 니 다. 아래 수정자 가 잘못 되 었 습 니 다. 8) T = MIME 타 입 (force MIME type) 강제 MIME 타 입 9) NS 는 내부 서브 요청 이 아 닌 경우 에 만 사용 10) NC 대소 문자 구분 없 음 11) QSA 추가 요청 문자열 12) NE 는 전의 특수 문 자 를 출력 하지 않 습 니 다 \% 3d $1 등가 = $1

좋은 웹페이지 즐겨찾기