2012-08-28 4 views
1

나는 /s/somefile.php?s=30ec3629으로 리디렉션하려는 /s/30ec3629과 같은 URL을 가지고 있습니다.슬럿을 파일이 아닌 매개 변수로 리디렉션

동일한 디렉토리에 다른 파일이 있으며 주어진 요청에 대해 파일이있는 경우 리디렉션하지 않으려합니다 (예 : /u/some_img.gif/u/somefile.php?s=some_img.gif으로 리디렉션하지 않음). 이 리디렉션은 /s/ 디렉토리에서만 발생해야합니다.

여기에 필요한 .htaccess 다시 쓰기 규칙은 무엇입니까?

+0

당신의/s의/디렉토리에 htaccess로 파일이 시도 : | – Oussama

+0

오, 노력했습니다. htaccess 재 작성 규칙에 대한 나의 시도는 매우 추악한 엉망이나 엉성한 것으로 바뀌며 일반적으로 500 개의 서버 내부 오류가 발생합니다. 당신은 정말로이 일을하려고 애쓰는 엉망을보고 싶지 않습니다. – Erics

답변

2

내가 여기 사람들이 시도하기 전에 물어 좋아하지 않아 경고

RewriteEngine On 
RewriteBase /s/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/?$ somefile.php?s=$1 [L,QSA] 
+0

이것을'/ s/.htaccess' 또는'/ .htaccess'에 넣었습니까? 나는 단지 슬러그 리다이렉션을'/ s /'디렉토리 내에서 발생 시키길 원하지만 코드는 404를 생성하고있다. 기존 파일이 있다면 제대로 작동한다. – Erics

+0

@Erics 죄송합니다. 질문을 잘못 읽었을 것입니다. –

+0

Mea culpa 편집을 참조하십시오. 새 코드는 멋지게 작동합니다. 감사합니다! – Erics

관련 문제