2009-02-25 3 views
0

PHP를 사용하여 MYSQL에 연결했습니다. 나는 데이터베이스 정보, 연결 정보 등을 넣는 곳을 포함하고 있으며 필요한 것을 포함시킵니다.PHP와 MySQL의 보안

누군가 내 사이트를 크롤링하지 못하게하는 이유는 무엇입니까? 포함하고 내 데이터베이스에 연결할 수 있습니까? 나는 일반적으로 MySQL에서 소수의 priv를 제한합니다. 예를 들어 데이터를 삽입/업데이트 할 수있는 사용자 일 수도 있습니다. 하지만 모든 권한을 가진 관리자 사용자가 있습니다.

내 연결 정보를 보호하는 가장 좋은 방법은 무엇입니까?

감사합니다,

- 제이슨

답변

13

킵 폴더하지 웹 루트 내부에 포함되어 있습니다. 누군가 여러분의 사이트에 대한 웹 서버 액세스 권한을 얻고 파일 시스템에서 PHP를 볼 수있는 경우 포함 된 민감한 세부 정보는 웹 루트에 없습니다. 많은 해킹은 사이트가있는 곳으로 만 접근 할 수 있습니다. PHP 소스 디렉토리가 없는지 확인하십시오.

1

웹 서버에 무엇을 사용하고 있습니까? 아파치 또는 이와 유사한 경우 DB 정보를 문서 루트 외부에 배치 할 수 있습니다.

1

서버가 올바르게 구성되어 있으면 PHP 코드가 PHP에 의해 실행되고 소스 코드 자체가 아닌 출력 만 브라우저로 보내집니다. 따라서 웹 사이트를 탐색하거나 크롤링하면 PHP 파일의 내용 즉 데이터베이스 자격 증명이 공개되지 않습니다.

물론 서버가 이 아니고이 올바로 구성되어 있지 않은 경우에도 마찬가지입니다. (하지만이 경우 수정해야합니다!)