NginxとPHP5-FPMがインストールされ、正常に実行されています...
#私は http://www.example.com と http://www.example.com/info.php の両方にアクセスできます
$ ls -la /var/www/html
-rw-r--r-- 1 root root 868 Nov 1 08:16 index.html
-rw-r--r-- 1 root root 21 Nov 1 08:13 info.php
Phpmyadminをインストールし、phpmyadminファイルへのシンボリックリンクを作成しました
lrwxrwxrwx 1 root root 21 Nov 1 08:37 phpmyadmin -> /usr/share/phpmyadmin
しかし、取得しようとすると http://www.example.com/phpmyadmin => 403Forbiddenを取得します
シンボリックリンクを使用すると、phpmyadminに関連するものをnginx.confに追加する必要はありません...何が欠けている可能性がありますか?
アップデート1:uriにindex.phpを追加すると、ログインパネルが表示されます
http://www.example.com/phpmyadmin/index.php
直接取得するには、デフォルトのconファイルに何を追加する必要がありますか... tryファイルが無効だと思います..これがデフォルトのnginxサイトのconファイルです
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/html;
index index.php, index.html index.htm;
server_name example.com;
location / {
try_files $uri $uri/ index.html index.php =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
次の場所を追加すると、正常に実行されます。
location /phpmyadmin {
index index.php;
}
これがこの問題の私の解決策です。
ステップ1:SSHでコマンドを実行する必要があります
Sudo nano /etc/nginx/sites-available/default
ステップ2:ブロックコードを見つける
server {
....
}
次に、サーバーブロックの「}」の前に挿入します
location /phpmyadmin {
index index.php;
}
こんな感じ
server{
...(your default)...
location /phpmyadmin {
index index.php;
}
}
これがあなたのものであることを願っています!
私が追加しました:
location /pma/ {
alias /usr/share/phpmyadmin/;
index index.html index.htm index.php;
location ~ ^/pma(.+\.php)$ {
alias /usr/share/phpmyadmin$1;
fastcgi_pass unix:/var/run/php5-fpm.sock; #OR fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /usr/share/phpmyadmin$1;
include fastcgi_params;
fastcgi_intercept_errors on;
}
}
そのため、ユーザーがディレクトリ/pma/
にアクセスすると、/usr/share/phpmyadmin
に移動します。これも少し「安全」なオプションです。以前と同じように、私も403エラーが発生していました。
しかし、403
エラーの主な修正は、実際には次の行を実装することです。
index index.html index.htm index.php;
ここにあなたが試すことができるいくつかのことがあります。 1つは disable_symlinks
ディレクティブ:
location /phpmyadmin {
disable_symlinks off;
}
別のオプションは、シンボリックリンクの代わりにエイリアスを使用することです。
location /phpmyadmin {
alias /usr/share/phpmyadmin;
}
カンマをなくすと大丈夫です
index index.php, index.html index.htm;
nginx.confファイルまたはデフォルト(../sites-available/default)
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}