Mysql

Wordpress 安裝不接受 AWS RDS 憑證

  • April 30, 2018

這很奇怪,我有一個 AWS EC2 實例設置,我試圖安裝 Wordpress 並為數據庫使用 RDS。我可以使用 mysql 客戶端從實例連接到數據庫,並且憑據與 RDS 端點一起工作。

我為 RDS 設置了一個安全組,它只接受來自實例 ip 的埠 3306 連接,我可以從實例 telnet 到它,但我不能從我的本地機器上,所以我知道數據庫安全組正在工作美好的。

EC2 實例有一個安全組,允許埠 80,22,443 和 3306 進出所有埠,所以應該沒問題。

但是,在用於設置數據庫的 WP 安裝步驟中,它不會每次都接受憑據並返回“建立數據庫連接時出錯”。我嘗試將詳細資訊添加到 wp-config.php 但隨後它抱怨它需要 wp-config-sample.php 才能繼續該過程。

Wordpress 目錄和文件都歸實例中的 apache 所有,目錄和文件的權限為 755/644。

經過一些Google搜尋和四處詢問後,我被建議檢查 SELinux 設置,並在執行此命令後發現問題:

sudo tail -100 /var/log/audit/audit.log | audit2why

它返回這個:

type=AVC msg=audit(1525088932.314:74428): avc:  denied  { name_connect } for  pid=14435 comm="httpd" dest=3306 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:mysqld_port_t:s0 tclass=tcp_socket

   Was caused by:
   One of the following booleans was set incorrectly.
   Description:
   Allow httpd to can network connect

   Allow access by executing:
   # setsebool -P httpd_can_network_connect 1
   Description:
   Allow httpd to can network connect db

   Allow access by executing:
   # setsebool -P httpd_can_network_connect_db 1

在執行了建議的命令之後,我就可以繼續安裝了,我確實必須遵循一些進一步的 Wordpress 說明並手動創建 wp-config.php 文件。

這篇優秀的文章對我幫助很大。

引用自:https://serverfault.com/questions/909999