반응형
내가 가진 가장 좋은 아이디어는 데이터를 코드에서 구성 파일 (저장소에서 제외됨)로 이동하고 어떻게 든 인코딩하므로 직접 읽을 수 없습니다 (난독 화). 문제를 해결하는 더 좋고 사용하기 쉬운 방법이 있습니까?
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
범위 : 강력하면서도 사용하기 쉬운 솔루션을 구축하고 싶습니다. 나는 합리적인 보안을 원하지만 여기서는 기밀 데이터를 다루지 않습니다.
해결 방법
가장 쉬운 방법은 말했듯이 구성 파일을 사용하는 것입니다.
또한 프로덕션, 개발 및 테스트 플랫폼에 대해 다른 구성 파일을 가질 수 있도록 구성 파일의 기본 (빈 / 기본) 버전을 갖고 환경별로 분리하는 것도 좋은 생각입니다.
환경 변수는 아래 코드와 같이 이러한 환경을 구별하는 가장 일반적인 방법입니다.
// Check if it's been set by the web server
if (!empty($_ENV['ENVIRONMENT'])) {
// Copy from web server to PHP constant
define('ENVIRONMENT', $_ENV['ENVIRONMENT']);
}
if (!defined('ENVIRONMENT')) {
// Default to development
define('ENVIRONMENT', 'development');
}
// Load in default configuration values
require_once 'config.default.php';
// Load in the overridden configuration file for this environment
require_once 'config.' . ENVIRONMENT . '.php';
매우 일반적인 또 다른 방법은 XML 구성 파일을 사용하고 필요한 값만 읽는 것입니다 (구성 파일의 캐시 된 사본을 메모리에 저장). 이것은 PHP 파일의 임의의 포함을 허용하지 않고 특정 값으로 만로드하도록 매우 쉽게 제한 할 수 있으며 제 생각에는 전반적으로 더 나은 솔루션이지만 위의 내용은 올바른 방향으로 시작해야합니다.
참조 페이지 https://stackoverflow.com/questions/15088979
반응형
'MySql' 카테고리의 다른 글
MySQL null 값을 외래 키 필드에 전달하는 방법은 무엇입니까? (0) | 2021.01.10 |
---|---|
MySQL Apache Solr를 mysql과 연결하는 방법 (0) | 2021.01.10 |
MySQL에서 하위 쿼리를 조인으로 바꾸기 (0) | 2021.01.10 |
MySQL pdo에서 문자열을 이스케이프하는 방법은 무엇입니까? (0) | 2021.01.10 |
MySQL C #을 사용하여 원격 MySQL 서버에 연결하는 방법은 무엇입니까? (0) | 2021.01.10 |
댓글