2010-12-13 4 views
1

아파치에서 PHP로 매우 작은 사이트 인 5 페이지를 만들고 있습니다. 나는 내가 .PHP 확장자를 숨길 원 등 최상위 디렉토리, index.php를, random.php에 다섯 개 PHP 파일을 만들었습니다, 그래서 내의 .htaccess에 다음을 넣어 :간단한 RewriteRule 문제에 대한 도움

RewriteRule ^random/?$ random.php

www.example.com/random을 방문하면 필요한 페이지를 얻을 수 있지만 www.example.com/random/ (끝에 슬래시)를 방문하면 CSS와 링크가 모두 한 디렉토리 아래에 있습니다 (예 : 서버). 나는 /random/index.php에 있고, /random.php에 없다고 생각합니다.

전 RewriteRule에서 멍청한 녀석입니다. 미리 감사드립니다!

답변

2

실제로 HTTP 리디렉션을 수행하는 후행 슬래시에 대해 별도의 규칙이 있어야합니다. 예 :

RewriteRule ^random/$ /random [R=301,L] 
RewriteRule ^random$ random.php 

상대 URL은 브라우저에서 처리하므로 그 슬래시가 있으면 브라우저가 혼동을 일으킬 수 있습니다.

대부분의 HTTP 서버는 실제로 디렉토리 이름에 대해 이러한 종류의 리디렉션과 반대입니다. 즉, http://example.com/foo/bar으로 이동하고 bar을 디렉토리로 지정하면 /foo/bar/으로 리디렉션됩니다.

+0

고마워요! 내가 할게. –