Nginx & PhpMyAdmin 标准实践

Nginx & PhpMyAdmin 标准实践

我目前正在将一个小型开发服务器从 Apache 迁移到 Nginx,并且我想知道管理 PhpMyAdmin 的“标准”方法:

我只是将 phpmyadmin 文件夹符号链接到我的 nginx 站点根文件夹。我还看到很多帖子说要反过来管理它,即使用 nginx conf 文件。

我的问题是:“标准方法是什么?这两种方法的优缺点是什么?”

在第二种解决方案的优点中,我猜它是全局的(如果我们想在每个域上使用它,就不需要对每个域都这样做。)但由于我不关心它在任何其他域上,我只是想确保我不会错过一些安全问题。

答案1

我用管理员而不是 PhpMyAdmin,但概念是相同的。

我建议在你的 nginx 站点配置中添加 PhpMyAdmin 的位置,并使用 HTTP 基本身份验证保护它。PhpMyAdmin 是黑客和机器人的主要目标,因此最好保护它。

#Location for Adminer
location /db {
alias /var/www/adminer/;
auth_basic "Restricted";                        #Enable HTTP authentication
auth_basic_user_file /etc/nginx/pass;           #Set authentication file location
try_files $uri $uri/ /index.php;
        location ~* ^/db(.+\.php)$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $request_filename;
        include fastcgi_params;
        }
}

相关内容