2017-03-31 4 views
0

을 문서 루트 내의 services.html에 매핑하는 개별 다시 쓰기 규칙을 포함하는 로컬 호스팅 서비스에 로컬 .htaccess 파일이 있습니다.Apache mod_rewrite와 숨김 소스 파일을 동시에 사용합니다

RewriteEngine On 
RewriteBase/
RewriteRule ^services$ services.html [L] 

나는 (그들이 주위를 킁킁 경우)하고 대신 404 HTTP 응답을받을 수있는 직접 /services.html 액세스하는 소비자를 방지 할 수 있습니까? 나는 이 아니며은 소비자가 services.html 파일을 가지고 있다는 것을 알고 싶어하며 원래 /services 리소스와 연결되는 302 개의 응답을 보내는 것을 포함합니다.

그러나 /services.html에 대해 404를 반환하는 규칙을 설정하려고 시도했지만 /services도 404를 반환했습니다.

은 요약하면, 나는 소비자는 /services 엔드 포인트 (200 OK)를 참조 할 수 있도록하려면하고 그 뒤에 매핑되는 것을 결코 알지 못할, 또는 공개적으로 선택한 엔드 포인트 (찾을 수 없음 services.html 수익 404) 우회.

+0

을 보여 당신이 이유를 공유하는 마음을 할 것입니다 ? 당신의 질문을 이해하는 한, 당신은/services를 호출하고 DocumentRoot에서 services.html을 얻고 싶지만 URL/URI가 변경되는 것을 원하지는 않습니다 ... [P] 그렇게합니다. –

+0

@HelloFishy 아래 투표 결과가 내 것이 아니 었습니다. – codemagician

답변

-1

먼저 services.html을 '숨기고'요청을 프록 싱하기 위해 [P] 매개 변수를 사용하십시오.

http://yourdomain.com/services 같은 요청을 소요하고 온 사용자를 표시하지 않고 http://yourdomain.com/ /services.html을 반환
RewriteEngine On 
RewriteBase/
RewriteRule ^/services$ http://yourdomain.com/<path-to-the-file>/services.html [P,L] 

, 브라우저는 아직도 당신을 downvoted 경우,/서비스