いくつかのサイトが正常に動作しているUbuntu16.04 Nginx環境で、phpmyadminをインストールしました。
cd /var/www/html
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.Zip
find ./ -type f -iname '*phpmyadmin*.Zip' -exec unzip {} \;
find ./ -type d -iname 'phpmyadmin-*' -exec mv {} phpmyadmin \;
次に、ブラウザからip_address/phpmyadmin
を介してアクセスしようとしましたが、いずれかのサイトで404を取得しました。
これはwebappconfがないことが原因だと思ったので、作成しました。
nano /etc/nginx/sites-available/phpmyadmin.conf
:
server {
root /var/www/html/phpmyadmin/;
server_name phpmyadmin;
location / {
index index.php index.html index.htm fastcgi_index;
try_files $uri $uri =404 $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
listen 80;
}
次に
ln -s /etc/nginx/sites-available/phpmyadmin.conf /etc/nginx/sites-enabled/
systemctl restart nginx.service
それでも、問題は解決しません。
ログには、次のエラーのみが指定されています。
2018/01/01 03:02:25 [emerg] 21959#21959:/etc/nginx/sites-enabled/phpmyadmin.conf:2の不明なディレクティブ「/ var/www/html/phpmyadmin /」
私は基本的にnginx.conf
を変更せず、そのネイティブディレクティブに依存しています。
Nginx sysadminにサブドメインの使用を提案した方法を調べましたが、IPアドレスから直接アクセスすることを好みます。
server_name
には、サーバーへのアクセスに使用される名前が含まれている必要があります。 IPアドレスでサーバーにアクセスするには、サーバーにIPアドレスが含まれている必要があります。
例えば:
server_name 192.0.2.1;
詳細については、 このドキュメント を参照してください。
しかし、最初にそのエラーを修正する必要があります-なぜ不明なディレクティブを取得しているのかわかりませんroot
ステートメントからのエラー。タイプミスを導入しましたか?