在 Ubuntu 16.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 错误。
我认为这是由于缺少 webapp 配置造成的,所以我创建了一个。
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 系统管理员,他建议我使用子域名,但我更喜欢直接从 IP 地址访问它。
答案1
应server_name
包含用于访问服务器的名称。要通过 IP 地址访问服务器,它应包含 IP 地址。
例如:
server_name 192.0.2.1;
看这个文件了解更多信息。
但首先你需要修复这个错误- 我不知道你为什么会得到未知指令您的陈述有误root
。您是否输入了拼写错误?