2013-08-08 4 views
0

htaccess를 사용하여 모든 이미지 URL을 외부 사이트로 리디렉션하고 싶습니다.htaccess 변수 img url을 외부 img url

소스의 img URL : http://img04.domaincdn.com/bao/uploaded/i4/18278023028506354/T1zRaGXqhaXXXXXXXX_!!0-item_pic.jpg_230x230.jpg

img04 : /files/img04/uploaded/i4/18278023028506354/T1zRaGXqhaXXXXXXXX_!!0-item_pic.jpg

리디렉션이 URL IMG에 대한 이미지 URL은 다음과 같습니다 : 04는 01에서 09까지 num 변수입니다.

i4 : img와 같고 접두어가 "i"이고 num 변수가 img와 같습니다.

/18278023028506354/:이 섹션은 숫자 만 사용합니다. 변수가 있습니다.

"T1zRaGXqha":이 섹션은 0-9, a-z, A-Z를 결합합니다. 변수입니다.

"XXXXXXXX _ !! 0-item_pic.jpg":이 섹션은 변경되지 않으며 모든 이미지에는이 섹션이 있습니다.

리디렉션을 위해 htaccess 규칙을 어떻게 작성해야합니까?

고맙습니다.

+0

로 끝나는 문자의 수를 잡아 수 있습니다, 실제 JPG의 이름이었다 한 변화를 만들어 ? 또한 CDN에서 하나의 파일 크기 (230x230) 만 가져 옵니까? – miah

+0

RewriteCond % {QUERY_STRING} ^/파일/img ([0-9] +)/업로드 됨/i ([0-9] +)/([0-9] +)/([ 9a-zA-Z -] +) _ !! 0-item_pic.jpg $ RewriteRule^$ http : // img ([0-9] +) .domaincdn.com/bao/uploaded/i ([0-9 ] +)/([0-9] +)/([_0-9a-zA-Z-] +) _ !! 0-item_pic.jpg_230x230.jpg? [R = 301, NC, L] – Robin

+0

위의 규칙에는 500 개의 오류가 있습니다. 다시 작성할 수있는 많은 다른 규칙을 시도했지만 성공하지는 못했습니다. 그것을위한 어떤 아이디어? 감사. – Robin

답변

0

정말 가까이에, 당신의 RewriteCond가 !! 전에 '_'가 누락 된 다음 $1,$2,$3,..을 사용하여 캡처 된 그룹에 액세스해야합니다!

즉, RewriteCond가 필요하지 않으며 패턴 일치를 처리 할 수 ​​있으므로 RewriteRule을 가질 수 있습니다. 즉, RewriteCond는 단지 반복적입니다.

RewriteRule ^files/img([0-9]+)/uploaded/i([0-9]+)/([0-9]+)/(.+\.jpg) http://img$1.domaincdn.com/bao/uploaded/i$2/$3/$4.jpg_230x230.jpg? [R=301,NC,L] 

나는 그것이 마지막 요소이기 때문에, 우리는 당신이 시도 것을 다음 그래서 .jpg