2012-04-15 2 views
0

나는 문제가있다. 나는 htaccess로를 통해 다시 작성 친화적 인 URL을 만들어, 여기에 내 코드입니다 :htaccess와 친숙한 URL

RewriteRule ^category/(some-category)$ category/$1/ [R=301] 
RewriteRule ^category/(some-category)/$ category/index.php?some-category=$1 [L] 

그리고 모두가 잘 작동하지만 일단 내가 해요 옛적에 Google 웹 마스터 도구로보고 내 URL을에서 많은 오류를 보았다. Google은 일부 파일이 url에 존재하지 않는다고 말했습니다.>> 이와 같이 http://domain.com/category//some-category/ 이것은 무엇입니까? 왜 이런거야?? 브라우저에서 해당 URL을 열려고하면 실제로 존재합니다 (일부 이미지는 소스가 손실되었지만 작동합니다). 내가 왜 작동하는지 모르겠다. htaccess 내 코드에서 두 개 또는 세 개가 아닌 /이 아닌 매우 강력한 구조이기 때문에 작동하지만 10 /과 함께 작동하기 때문이다. 도와주세요, 제발.

+0

실제로'some-category'를 $ 1에 저장하고 있습니까? 또는 여기에 데모 용입니까? – hjpotter92

+0

나는 당신을 올바르게 이해한다. 예, 나는 어떤 카테고리를 $ 1에 저장하고, $ 1은 왼쪽 부분의 "some-category"를 포함하고있는 변수이다. (그것은 "일부 카테고리"가 다양 할 수 있기 때문에) –

답변

0

그 dodgy 페이지는 어떤 http 헤더 코드를 반환합니까? 여전히 괜찮은 페이지가있을 수 있지만 404 코드를 반환하면 누락 된 것으로 표시됩니다.

상대 URL을 사용해야하므로 이미지가 손상되었습니다. 이중 슬래시는 하위 디렉토리를 추가하고 해당 상대 경로를 엉망으로 만드는 것입니다.

나는 dodgy 페이지로가는 귀하의 웹 사이트에 링크가 엉망인 것으로 의심됩니다. 우선 문제 (문제의 원인)를 찾아 고쳐야합니다. 출혈을 멈추고 뒤죽박죽을 치우십시오.

+0

해결책은 여기에'RewriteCond % {THE_REQUEST}^[AZ] {3,9} \ ((/ [^ /] +) *) // + ([^ \] *) \ HTTP/ RewriteRule. * http : //www.yourdomain.com%1/%3 [R = 301, L] ' –

관련 문제