В настоящее время я переношу небольшой сервер разработки с Apache на Nginx, и мне интересно узнать о «стандартном» способе управления PhpMyAdmin:
Я просто связал папку phpmyadmin с корневой папкой моего сайта nginx. Я также видел много сообщений, в которых говорилось, что нужно управлять этим наоборот, используя вместо этого файлы конфигурации nginx.
У меня вопрос: «Каков стандартный способ сделать это? Каковы плюсы и минусы обоих методов?»
Среди плюсов второго решения, я думаю, оно глобальное (нет необходимости делать это для каждого домена, если мы хотим, чтобы оно было в каждом домене). Но поскольку меня не волнует, чтобы оно было в любом другом домене, я просто хотел бы чтобы быть уверенным, что я не упускаю некоторых вопросов безопасности.
я использую Администратор вместо PhpMyAdmin, но это та же концепция.
Я бы рекомендовал добавить место для PhpMyAdmin в конфигурацию вашего сайта nginx и защитить его с помощью базовой аутентификации 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;
}
}