htaccess에서 동적 페이지 리디렉션 301을 어떻게합니까?htaccess 301 동적 페이지로 리디렉션 하시겠습니까?
예를 들어 /get.php?i=1234
을 /i/1234
등으로 리디렉션하는 규칙을 원한다면 어떻게해야합니까?
htaccess에서 동적 페이지 리디렉션 301을 어떻게합니까?htaccess 301 동적 페이지로 리디렉션 하시겠습니까?
예를 들어 /get.php?i=1234
을 /i/1234
등으로 리디렉션하는 규칙을 원한다면 어떻게해야합니까?
당신이 코드로 리디렉션 같은 mod_rewrite를 사용할 수 있습니다 :
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase/
RewriteCond %{QUERY_STRING} ^(i)=([^&]+)(&|$) [NC]
RewriteRule ^get\.php$ %1/%2? [L,R=301,NC]
RedirectMatch directive을 regular expression으로 시도해보십시오. mod_alias에 따라 다르므로 항상 활성화되어 있습니다. mod_rewrite를 사용할 수도 있지만 과잉이라고 할 수 있습니다. 교체는 $ N의 형태에 대한 참조를 포함 할 수 있습니다 :
RedirectMatch 301 ^/get\.php\?i=([0-9]+)$ /i/$1
당신이 상상할 수있는 바와 같이, $1
가 괄호 # 1 쌍의 내부 일치 있는지에 참조입니다.
RedirectMatch 301 ^/get\.php\?i=([0-9]+)&y=([0-9]+)$ /i/$1/$2/
당신은 당신의 아파치 설정을 정교하게 온라인
regular expression tester을 사용할 수 있습니다
: 당신은 많은 참조 할 수 있습니다 내가 "정규 표현식"입력에 ^/get\.php\?i=([0-9]+)&y=([0-9]+)$
를 넣어 경우, 그리고 "제목 문자열"에서 /get.php?i=12&y=24
를 입력 한 후 클릭 "보기 일치 "표시 :
Match at position 0:
/get.php?i=12&y=24
12 # first reference available
24 # second reference available
정규 표현식이 테스터에서 작동하지 않으면 아파치 구성에서 작동하지 않을 수 있습니다. 테스터에서 먼저 시도해야합니다.