0

php.ini を編集して、デフォルトのソケットを OPENSHIFT_MYSQL_DB_SOCKET に変更するにはどうすればよいですか?

2 番目の質問は、そもそもなぜ一致しないのかということだと思います。

PHPプログラムでDBを開くと、このエラーが発生します

メッセージ: mysql_connect(): ソケット '/var/lib/mysql/mysql.sock' を介してローカル MySQL サーバーに接続できません (2)

OpenShift MySQL ソケット環境変数は次のとおりです。

OPENSHIFT_MYSQL_DB_SOCKET=/var/lib/openshift/517ab6855973cab1e200003d//mysql-5.1/socket/mysql.sock

同じ構成/コードが機能し、ローカル システムで見つかります :-(

4

1 に答える 1

2

これは、CodeIgniter ファイル (../application/config/database.php) でトリックを行います。

$openshiftsocket = getenv('OPENSHIFT_MYSQL_DB_SOCKET');
//echo "OpenShift socket is [$openshiftsocket]";

if (isset($openshiftsocket)) {
   echo 'foo';
   ini_set('mysql.default_socket', $openshiftsocket);
}
于 2013-05-09T07:32:48.557 に答える