Mysql
Wordpress 安裝不接受 AWS RDS 憑證
這很奇怪,我有一個 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 文件。
這篇優秀的文章對我幫助很大。