sudo ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/proxy
sudo nginx -t
sudo nginx -s reload
sudo ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/proxy
sudo nginx -t
sudo nginx -s reload
sudo nginx -t
sudo nginx -s reload
...
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
...
server {
listen 10.102.10.32:80;
server_name ocdod174.ddns.net;
location / {
proxy_connect_timeout 59s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
proxy_buffer_size 64k;
proxy_buffers 16 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_pass_header Set-Cookie;
proxy_redirect off;
proxy_hide_header Vary;
proxy_set_header Accept-Encoding '';
proxy_ignore_headers Cache-Control Expires;
proxy_set_header Referer $http_referer;
proxy_set_header Host $host;
proxy_set_header Cookie $http_cookie;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://10.102.10.70:80;
}
}
sudo ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/proxy
sudo nginx -t
sudo nginx -s reload
server {
listen 10.102.10.32:80 default_server;
server_name _;
root /usr/share/nginx/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
Вы же предлагаете все запросы отправлять в PHP. Дыры в безопасности большего масштаба придумать нельзя.
при фактической дыре в самом коде phpmyadmin - будет полный доступ к любым файлам с того же экземпляра php-fpm, вне зависимости от хоста. Для защиты от уязвимостей phpmyadmin нужен отдельный экземпляр fpm.
Организуйте для phpMyAdmin отдельный поддомен с отдельным виртуальным сервером и отдельной обработкой php5-fpm через отдельный сокет.
Т.е. по вашему заставлять nginx на каждый запрос проверять наличие несуществующего файла - это правильно?
Тут вообще не понял - зачем отдельная зона json? Зачем проверка наличия существования файла (несуществующего), если запрос пришел на конкретный json.php?
К чему все эти бессмысленные переадресации?
Да логика то вполне понятная. Сначала запрещаем всё. Потом разрешаем конкретные типы файлов на статику, и конкретные .php файлы.
У вас же я вижу только пачку переадресаций, в т.ч. 404 вы зачем-то заруливаете на php, который что будет делать? Отдаст файл? Выполнит его, если не дай бог он окажется исполняемым?
Так себе решение.
https://nginx.ru/ru/docs/http/ngx_http_core_module...
он итак по умолчанию в nginx в off, что наводит на мысль что Вы его сами где то включили.