Tôi phát hiện ra rằng trang web của mình có vấn đề này và tôi không thể khắc phục vấn đề này. Tôi đã thử một số cách như kiểm tra xem các vị trí tiền tố gốc cho chỉ thị bí danh Nginx có kết thúc bằng dấu tách thư mục hay không, nhưng cho đến nay vẫn chưa có may mắn. Bật Merge_slashes - là cài đặt mặc định. Tôi đã đọc về AppArmour hoặc SELinux. đó là phải đường để đi không? Tôi có Ubuntu 18. Nói cách khác, tôi có thể tải xuống tệp này http://example.com///etc/passwd và tôi muốn tránh điều này. Bất kỳ trợ giúp được đánh giá cao. Đây là cấu hình của tôi:
người phục vụ {
nghe 80;
tên máy chủ
.example.com;
trả lại 301 https://example.com$request_uri;
}
người phục vụ {
tên máy chủ
www.example.com;
nghe 443 ssl http2;
ssl_prefer_server_ciphers Bật;
ssl_session_cache được chia sẻ:SSL:10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers '......
ssl_certificate /...crt;
ssl_certificate_key /..key;
trả lại 301 https://example.com$request_uri;
}
người phục vụ {
tên máy chủ
ví dụ.com;
nghe 443 ssl http2;
ssl_prefer_server_ciphers Bật;
ssl_session_cache được chia sẻ:SSL:10m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers '...
ssl_certificate /...crt;
khóa ssl_certificate_key /.....;
add_header x-frame-options "SAMEORIGIN" luôn luôn;
add_header x-xss-protection "1; mode=block" luôn;
add_header X-Content-Type-Options nosniff;
add_header Giao thông vận tải nghiêm ngặt-An ninh "max-age=63072000; bao gồm tên miền phụ; $
gốc /var/www/www.example.com;
chỉ số index.php;
client_max_body_size 10M;
truy cập_log /var/log/nginx/example.com.log;
error_log /var/log/nginx/example.com.error.log lỗi;
địa điểm / {
try_files $uri $uri/ /index.php;
}
địa điểm /mua sắm/ {
chỉ mục index.php index.html index.htm;
viết lại ^/shop/wp-json/(.*?)$ /shopping/index.php?rest_route=/$1 cuối cùng;
try_files $uri $uri/ /shop/index.php?q=$uri&$args;
}
vị trí ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
hết hạn 24h;
log_not_found tắt;
}
vị trí ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
bao gồm fastcgi_params;
}
vị trí ~\.(log|save|htaccess|json|csv|txt|xls)$ {
Phủ nhận tất cả;
error_page 403 =404 / ;
}
vị trí ~* /(?:uploads|files)/.*\.php$ {
Phủ nhận tất cả;
}