このエラーが発生しました。理由はわかりませんSQLSTATE[HY000] [2002] Permission denied
そしてここに私がファイルをアップロードしようとしているウェブサイトがありますexample.com
。
これは、selinuxがhttpdサーバーからリモートdbサーバーへのdb接続を回避するために発生します。それを解決するには、sshを介してサーバーにアクセスするか、偽のアクセス権がある場合はコンソールを開いて次の操作を行う必要があります。
ポート80が管理されている場合は、SELinuxをチェックインする必要があります。リストを確認するには、# semanage port -l | grep http_port_t
と入力してチェックします。
http_port_t tcp 443, 488, 8008, 8009, 8443, 9000
必要なポートを追加する必要がある場合は、次のように入力します。
# semanage port -a -t http_port_t -p tcp 80
もう一度確認するコマンドを入力します。
# semanage port -l | grep http_port_t
。
http_port_t tcp 80, 443, 488, 8008, 8009, 8443, 9000
次に、httpdサーバーからdbリモートサーバーへのネットワーク接続を許可することをSELinuxに通知し、ブール変数を設定して設定します。
# service httpd stop
# setsebool httpd_can_network_connect 1
# setsebool httpd_can_network_connect_db 1
# service httpd start
これで、httpdサービスはdbサーバーからデータを取得できるようになります。
検索がこのようなエラーを解決するギャングに役立つことを願っています。
チリから、よろしく。
.envファイルに移動し、DB_Host = 127.0.0.1をDB_Host = localhostに変更します。
たぶん、あなたはこのようにselinuxをシャットダウンする必要があります
setenforce 0