2012-12-19 5 views
0

가능한 중복 : PHP에
Connecting to MySQL via SSL using PHPPHP로 mysql 데이터베이스에 연결하고 SSL을 사용하려면 어떻게해야합니까?

임 새로운 I 원격으로 SSL을 사용하여 데이터베이스에 연결하는 가야하는 방법을하지 확신합니다. mysql 워크 벤치를 사용하면 데이터베이스의 URL과 호스트 이름 및 암호를 입력하고 ssl을 사용할 수 있으며 연결할 수 있습니다. 어떻게 PHP를 사용하여 이것을 할 수 있습니까? 다음과 같은 PHP 코드 SSL을 사용하여 연결할 수 here 설명하는 MySQL 서버 측에서 몇 preaprations 후

+1

[이전 커넥터가 떨어진 것입니다] 당신이 여기에 무엇을 사용하고 사용되지 않습니다 5.5로 mysql_connect의 그러나

$db = mysql_connect('your.server','username','pass',false,MYSQL_CLIENT_SSL); 

를 MySQL로 연결을 시도하고있는 무슨 방법에 따라 달라집니다 데이터베이스 액세스? mysqli? PDO? –

+0

그럼 내가 stackoverflow의 검색 알고리즘에 투표 – user1809913

+2

@ user1809913 나는 구글을 사용 : p –

답변

1

:

$db = mysqlii_init(); 
$db->ssl_set('server-key.pem','server-cert.pem', 'cacert.pem', NULL, NULL); 
$db->real_connct("your.server.net", "test", "testpass", "yourdb"); 

또는 이전 (사용되지 않음) MySQL의 API이 CN을 사용하여이 방법을 수행 할 수 :

$link = mysql_connect("your.server.net", "test", "testpass", false, MYSQL_CLIENT_SSL) 
if(!$link) { 
    die (mysql_error())); 
} 

참고 : MySQL의 기본 드라이버가 SSL을 지원하지 않는

주 PHP 5.3.3 이전에는 MySQL 네이티브 드라이버를 사용할 때이 함수를 호출하면 오류가 발생합니다. MySQL Native Driver는 PHP 5.3 이후부터 Microsoft Windows에서 기본적으로 활성화됩니다.

+0

http://news.php.net/php.internals/53799 – greg0ire

0

$db = mysqli::init(); 
$db->set_ssl($key,$cert,$ca,$capath,$cipher); 
$db->real_connect($host,$username,$passwd,$dbname); 
관련 문제