2012-01-18 3 views
2

내 웹 사이트는 여러 페이지로 나뉘어 있습니다.이 페이지는 두 개의 범주로 나뉘며, 하나의 "html"파일과 "html"파일이있는 서버 측 코드가 포함 된 "core"파일 필요, 두 PHP 파일.PHP : 블록 브라우저 요청

"핵심"파일을 "html"파일에서 요청할 수 없으며이를 차단하려고하는 상황이 있습니다.

"핵심"파일은 "html"파일이 요청한 경우에만 열 수 있어야합니다. 그렇지 않으면 404 오류가 표시 될 수 있습니까?

note * : 앞에서 말한 것처럼 "html"과 "core"파일은 모두 PHP 파일입니다.

미리 감사드립니다!

+0

이 실제로 서버 설정, 정말 PHP는 질문이다. 다른 StackExchange 사이트로 가져 가려고 할 수도 있습니다. –

+0

저는 실제로 서버에서 아무것도 알지 못합니다. 가능한 경우 PHP에서 이것을 수행하는 것이 흥미 롭습니다. –

답변

3

코어에 확인 코드를 만드십시오.

Somehting은 상수 "html"을 확인하고, 정의 된 경우 코드를 실행하고, 그렇지 않으면 404 오류를 던집니다.

http://br2.php.net/manual/pt_BR/function.constant.php

다른 방법은 아파치 서버를 사용하는 경우 htaccess로를 사용하여 차단하는 것입니다.

HTML (PHP 파일)

define('HTML'); 

코어 (PHP 파일)

if(!defined('HTML')) { /* Display 404 error */ } 
1

서버 설정을 통해 제어하거나 문서 루트 밖으로 이동하는 것이 좋습니다.

2

.htaccess를 사용하여 해당 파일에 대한 액세스를 제한 할 수 있습니다.

예 : 다른 사람들은 모두 당신이 뭔가를을 .htaccess에 추가 할 수 있습니다 .HTML가하면서 "핵심 파일"는 .PHP 확장자가있는 경우 :

<Files ~ "\.php$"> 
Order allow,deny 
Deny from all 
</Files> 

아니면 "핵심 파일"모든 디렉토리에있는 경우 제한 할 수

액세스로 입력

아파치가 지정한 .htaccess를 사용하려면 AllowOveride All을 사용하십시오.

+0

내가 포스트에서 말했듯이, 그들은 HTML 코드를 포함하고 있기 때문에 둘 다 PHP 파일이며, "html"파일이라고 불린다. 내 옵션을 고려하고 만약 내가 PHP에 아무 것도 htaccess에 갈 것입니다, 빠른 재생을 주셔서 감사합니다. –

+0

@MorSela 미안 해요. :) 핵심 파일의 이름을 .inc.php로 바꿀 수 있으며 위에서 지정한대로 제한을 적용하거나 별도의 디렉토리로 이동하여 제한 할 수 있습니다. GabrielGartz가 언급 한 정의의 개념은 또한 실행 가능한 솔루션입니다. – mobius