PhpMyAdminにアクセスしたいときに、常にこのメッセージを受け取ります。
w3m localhost/phpmyadmin
Forbidden
You don't have permission to access /phpmyadmin/ on this server.
Apache/2.2.15 (CentOS) Server at localhost Port 80
インストール手順:
rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2- 2.el6.rf.x86_64.rpm
yum install phpmyadmin
エイリアスを追加
vi /etc/httpd/conf.d/phpmyadmin.conf
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin
Cookieからhttpに変更する
vi /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]
再起動
/etc/init.d/httpd restart
SELinux-/ etc/httpd
drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 .
drwxr-xr-x. root root system_u:object_r:etc_t:s0 ..
drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 conf
drwxr-xr-x. root root system_u:object_r:httpd_config_t:s0 conf.d
lrwxrwxrwx. root root system_u:object_r:httpd_log_t:s0 logs -> ../../var/log/httpd
lrwxrwxrwx. root root system_u:object_r:httpd_modules_t:s0 modules -> ../../usr/lib64/httpd/modules
lrwxrwxrwx. root root system_u:object_r:httpd_config_t:s0 run -> ../../var/run/httpd
SELinux-/ usr/share/phpmyadmin
drwxr-xr-x. root root system_u:object_r:usr_t:s0 .
drwxr-xr-x. root root system_u:object_r:usr_t:s0 ..
-rw-r--r--. root root system_u:object_r:usr_t:s0 browse_foreigners.php
-rw-r--r--. root root system_u:object_r:usr_t:s0 calendar.php
-rw-r--r--. root root system_u:object_r:usr_t:s0 changelog.php
-rw-r--r--. root root system_u:object_r:usr_t:s0 chk_rel.phph
.
.
.
-rw-r--r--. root root system_u:object_r:usr_t:s0 view_create.php
OS
centos-release-6-0.el6.centos.5.x86_64
Httpd.confファイルを次のように編集します。
# nano /etc/httpd/conf/httpd.conf
ここに次の行を追加します。
<Directory "/usr/share/phpmyadmin">
Order allow,deny
Allow from all
</Directory>
次のコマンドを発行します。
# service httpd restart
問題が解決しない場合は、SELinuxを無効にしてください。
CentOS 7サーバーでは、上記のどの設定も機能しませんでした。何時間も検索した後、それは私のために働いたものです:
ファイルphpMyAdmin.confを編集します
Sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
そして、これを上部で置き換えます:
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
#Require ip 127.0.0.1
#Require ip ::1
Require all granted
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
ここで提供されているすべての回答を試しました:phpMyAdmin.confの編集、phpmyadminフォルダーのselinuxコンテキストの変更、selinuxの無効化...それでもWebサーバーから「禁止」を取得しました。
私はついにエドゥアール・ティエルの投稿で欠けていたものを見つけました ここ :
$ yum install php
次に、httpdを再起動します。
$ service httpd restart
=>セントス6ホット
$ systemctl restart httpd
=> centos 7ホストの場合
驚いたのは、最初にphpmyadminの依存関係としてphpがインストールされない理由です。
よろしく、フレッド
私は今2日間同じ問題を抱えていました。 SELinuxとすべてを無効にしましたが、何も助けませんでした。そして、ちょっとした修正のためにセキュリティを無効にするのは賢くないかもしれないことを理解しています。それから私はこの記事に出会いました- http://wiki.centos.org/HowTos/SELinux/ SELinuxがどのように動作するかを説明しています。だからこれは私がやったことであり、それは私の問題を修正しました。
Phpmyadminの親ディレクトリ(私の場合はhtml)に移動して、次のように入力して、メインのphpmyadminディレクトリへのアクセスを有効にします。
chcon -v --type=httpd_sys_content_t phpmyadmin
次のように入力して、index.phpに対して同じことを行います。
chcon -v --type=httpd_sys_content_t phpmyadmin/index.php
戻って、空白のページが表示されるかどうかを確認してください。もしそうなら、あなたは正しい軌道に乗っています。そうでない場合は、戻ってhttpd.configディレクトリの設定を確認してください。警告なしで空白のページが表示されたら、次に進みます。
次のコマンドを実行して、phpmyadminディレクトリ内のすべてのファイルを再帰処理します。
chron -Rv --type=httpd_sys_content_t phpmyadmin/*
Phpmyadminページに戻り、必要なものが表示されているかどうかを確認します。ネットワーク外部からアクセス可能なWebサーバーを実行している場合は、SELinuxを適切なセキュリティレベルにリセットしてください。お役に立てれば!
URLをテープに記録するときに同じ問題に直面しました
https://www.nameDomain.com/phpmyadmin
/ use/share/phpMyAdminディレクトリのルールのため、禁止されているメッセージが表示されます。このファイルに追加することで修正します/etc/httpd/conf.d/phpMyAdmin.conf
このセクションで
<Directory /usr/share/phpMyAdmin/>
....
</Directory>
これらの規則
<Directory /usr/share/phpMyAdmin/>
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
Allow from All
...
</Directory>
ファイルを保存してから、選択した方法にかかわらずApacheサービスを再起動しますservice httpd graceful
またはservice httpd restart
それはあなたのポリシーに依存します
セキュリティ上の理由から、IPが変更されない場合はIPアドレスを1つ設定することにより、1つの接続を指定できます。
<Directory /usr/share/phpMyAdmin/>
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
Allow from 105.105.105.254 ## set here your IP address
...
</Directory>
上記の解決策のどれも私にとってはうまくいきませんでした。以下は最終的に機能したものです:
#yum update
#yum install phpmyadmin
Phpmyadminは数時間前に働いていたのでご注意ください。何が起こったのか分かりません。
この後、ブラウザにアクセスすると、./config.inic.php can't be accessed
#cd /usr/share/phpmyadmin/
#stat -c %a config.inic.php
#640
#chmod 644 config.inic.php
これは、ファイルのアクセス許可が640だったことを示しています。その後、644に変更しました。
必ずhttpdを再起動してください。
#service httpd restart