2013-07-30 1 views
-1

나는 다음과 같은 예를 들어 모든 알 수없는 URL을 리디렉션 싶습니다긴 URL을 모두 짧은 버전으로 리디렉션하는 방법은 무엇입니까?

http://www.website.com/title/.../... 

이 좋아하는 :

http://www.website.com/title 

나는이처럼 보이는 .htaccess 파일을 시도했지만 작동하지 않는 것 :

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} ^(.*)/.*$ 
RewriteRule ^.*/(.*)$ /$1 [R=301] 

무엇이 누락 되었습니까?

+0

그것은 당신이 전혀 무엇을하려고 매우 분명하지 않다. * "모든 것을 더 길게"라고하는 것은 무엇을 의미합니까? 브라우저에서 볼 수있는 URL과 실제로 원하는 URL을 가리키는 URL의 차이점은 무엇입니까? –

+0

나는 검색 엔진에 의해 인덱싱 된 CMS에 의해 생성 된 긴 URL을 많이 가지고 있습니다. 나는이 모든 긴 URL을 내가 사용하고있는 표준 short 버전의 URL로 리디렉션 할 것이다. – user2635661

답변

0

첫 번째 타이틀을 원하는 점을 감안,이 작업을해야합니다 :

Options +FollowSymLinks -MultiViews 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)/.*$ /$1 [R=301,L] 

을 index.php를 들어 :

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/index\.php [NC] 
RewriteRule^/%1 [R=302,L] 
+0

감사합니다. Prix 정확하게 작동합니다. – user2635661

+0

감사합니다. Prix, 대단합니다! 정확히 99 %가 필요합니다. http : //www.website.com/index.php/.../...는 http://www.website.com/index.php로 리디렉션되지 않습니다. 이유는 모르겠지만 .htaccess에서 다른 규칙을 탐색하려고 노력할 것입니다. – user2635661

+0

index.php가 유효한 파일이고'RewriteCond % {REQUEST_FILENAME}! -f'가 유효한 파일의 방향을 바꾸지 못하게하기 때문에 다른 규칙이 필요합니다. – Prix

관련 문제