Мне удалось скомпилировать nginx 1.11.2 как с http_upload_module, так и с modsecurity.Однако я не могу загрузить файлы и передать их бэкэнду.Все остальное работает просто отлично, только функция загрузки.
Когда пользователи пытаются загрузить файлы, он просто там висит, ничего не происходит.Мы протестировали обход и прямой доступ к сайту, и функция загрузки работает, поэтому проблема на обратном прокси-сервере.
nginx.conf
user nginx nginx;
worker_processes 1;
events {
worker_connections 1024;
}
error_log /var/log/nginx/debug.log debug;
http {
server {
listen 443 ssl;
server_name xxxxx.example.com;
ssl_certificate /etc/nginx/conf/pki/ssl_certificate.crt;
ssl_certificate_key /etc/nginx/conf/pki/xxxxx.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
#file upload settings
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 600;
types_hash_max_size 2048;
include /etc/nginx/conf/mime.types;
default_type application/octet-stream;
location /upload {
# Store files to this directory
upload_store /etc/nginx/html/upload 1;
upload_pass /;
#upload_cleanup 400 404 499 500-505;
}
location / {
root html;
index index.html index.htm;
ModSecurityEnabled on;
ModSecurityConfig /etc/nginx/conf/modsec_includes.conf;
proxy_pass http://10.10.2.53:8001;
proxy_buffering off;
client_max_body_size 50M;
proxy_set_header Host $host;
proxy_ignore_client_abort on;
chunked_transfer_encoding on;
}
}
}
Загрузка файлов обрабатывается с помощью POST,что кажется успешным из того, что я вижу на access.log
xxx.xx.xx.xx - - [25/Oct/2018:13:26:15 +0300] "POST /SalaryUpload.aspx HTTP/1.1" 200 29728 "https://xx.xx.xx.xx/SalaryUpload.aspx" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.67 Safari/537.36"
Честно говоря, журнал отладки - это то, чего я действительно не понимаю.Мне кажется, как только начинается загрузка файла, время ожидания или что-то.Фрагмент журнала отладки -> https://pastebin.com/embed_js/DdGvb98T
Я пытался это исправить уже около 2 месяцев.Перепробовал так много конфигов, но до сих пор не понял.
Любая помощь по этому вопросу будет высоко оценена.