問題:SSHトンネリングでしか使用できないリモートMySQLデータベースを使用するようにwordpressを設定します。
ステージ:私はmachine上のApacheサーバー(WP_serverと呼ばれる)の上にwordpressのインスタンスを持っています。 WP_server、MySQLサーバーがなく、80(http)と22(ssh)以外のポートをブロックしています。
他の場所にはMySQLインスタンスを持つ別のマシン(Mysql_server)があります。このサーバーはWP_serverにデータベースを提供できます。
これら二つのサーバはSSHアクセスを持っています。
SSHトンネリングを使用するようにwordpressを設定するにはどうすればよいですか。
2サーブ間に sshトンネル を作成する必要があります。それから、あなたはmysqlサーバーipだけでWPから接続することができます。
ssh -f [email protected] -L 2000:personal-server.com:25 -N
-f
はsshにコマンドを実行する直前にバックグラウンドに入るように伝えます。
これにはログインしているユーザー名とサーバーが続きます。
-L 2000:personal-server.com:25
は-L local-port:Host:remote-port
の形式です。
最後に-N
はOpenSSHにリモートシステムでコマンドを実行しないように指示します。
via Revsys
あなたはwordpressでカスタムDBハンドラを使うことができます。 wp-includes/wpdb.php
ファイルにあるwpdbクラスを拡張し、ニーズに合うように変更します。最後に$wpdb
という名前のインスタンスを必ず作成してください。
次に、ファイルをwp-content/db.php
にドロップします。これはwpdbクラスの代わりに使用されます。