web-dev-qa-db-ja.com

phpmyadminは許可されていますがNginxで禁止されています

PHPmyadminへのアクセスが禁止されている理由を理解できません(http://my_ip/phpmyadmin)。インストールするために私がしたことは次のとおりです。

純粋なUbuntu 16.04マシン(サーバー、xenial)に、php-fpm 7.0でLEMPをインストールしました。 Nginx confがデフォルトです:

apt-get update -y
apt-get upgrade nginx mysql-server php-fpm php-mysql -y

次に、PMAをインストールし、許可

DEBIAN_FRONTEND=noninteractive apt-get upgrade phpmyadmin php-mbstring php-mcrypt -y
ln -s /usr/share/phpmyadmin/ /var/www/html/
chown -R www-data:www-data /usr/share/phpmyadmin/ /var/www/html
chmod -R a-x,a=rX,u+w /usr/share/phpmyadmin/ /var/www/html

私は本当にエラーログから何が問題なのか理解できません:

「/ var/www/html/phpmyadmin /」のディレクトリインデックスは禁止されています

PMAが禁止される原因は何ですか?

更新-一般:

ジェニーの更新:

私はシンボリックリンクを削除し、nginx.confhttpブロック内にこのconfを追加してサーバーを再起動しましたが、変更は見られません。

server {    
    location /phpmyadmin {
        index index.php index.html index.htm;
        root /usr/share;
    }
}
1
pntshere

ディレクトリをシンボリックリンクするときは、nginxに「/var/www/html/phpmyadminを使用する必要があるときは、代わりに/usr/share/phpmyadmin/を確認する必要があります。また、そのディレクトリはwebrootディレクトリの下にないため、nginxはそれを使用して。

シンボリックリンクを使用する代わりに、nginxにそのディレクトリを直接使用するように指示します。例:

location /phpmyadmin {
     index index.php index.html index.htm;
     root /usr/share;
}

これは、場所/phpmyadmin/usr/shareの下ではなく/var/www/html/の下にあることをnginxに伝えます。

または、/usr//var/ファイルシステムが同じパーティションにある場合は、シンボリックリンクの代わりにハードリンクを実行できます。ただし、パーティションのレイアウトを変更すると、問題が発生する可能性があります。

3
Jenny D

メッセージ

「/ var/www/html/phpmyadmin /」のディレクトリインデックスは禁止されています

nginxが構成されたインデックスドキュメントを見つけられないことを示し、ファイルをリストしようとします(禁止されています)。

Nginx構成のindexディレクティブを確認します。 index.php phpMyAdmin。

例:

index index.php index.html index.htm;
0