2010-01-04 2 views
2

URL에 표시된 파일의 이름을 수정해야하는 대규모 웹 사이트가 있습니다. mod_rewrite를 활성화 한 상태에서 Apache 2를 사용하고 있습니다. 내가 액세스.htaccess 및 페이지 이름

이제
RewriteEngine on 
RewriteBase/
RewriteRule ^CakeList\.php$ TastyThingsList.php [T=application/x-httpd-php] 

에서, http://mysitename/CakeList.php 내가 실제로 TastyThingsList.php 페이지에 대한 데이터를 볼 수 있습니까 : 나는 현재 내 htaccess로 파일에 다음과 같은 구성을 가지고있다. 사용자가 http://mysitename/TastyThingsList.php을 입력하면 해당 페이지가 표시되지만 "TastyThingsList.php"라는 주소 표시 줄보다는 "CakeList.php"를 읽고 싶습니다. mod_rewrite를 사용하여이 작업을 수행 할 수 있습니까? CakeList.php 페이지는 실제로 존재하지 않으며, TastyThingsList.php 페이지의 별칭으로 사용하고 있습니다. mod_rewrite에 대한 온라인 자습서를 많이 읽었지만 대답을 찾을 수없는 것 같습니다. http://mysitename/CakeList.php 또는 http://mysitename/TastyThingsList.php, 나는 http://mysitename/CakeList.php을 표시하는 브라우저에 주소를하려는 : 사용자 유형인지 한마디로

.

답변

1

RewriteRule에 대한 리디렉션 플래그를 사용 WebCow

당신에게 감사 :이 사실에 다시 요청을 보유하고 클라이언트 브라우저에 URL을 반환하여 작동

 
RewriteRule ^TastyThingsList\.php$ CakeList.php [R=permanent,L] 

, 그게 어때 검색 주소창에 사용자에게 표시됩니다.

이상적으로이 URL은 절대로 사용하지 않는 경우 절대로 제공되지 않으며 직접 입력 한 경우에는 액세스 할 수 없도록 구성 될 수도 있습니다.

정말 이상한 httpd 구성이 없으면 질문에서 RewriteRule에 T 플래그가 필요하지 않습니다.