mirror of
https://github.com/rustfs/rustfs.git
synced 2026-03-17 14:24:08 +00:00
83 lines
2.5 KiB
Nginx Configuration File
83 lines
2.5 KiB
Nginx Configuration File
# Copyright 2024 RustFS Team
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
worker_processes auto;
|
|
pid /var/run/nginx.pid;
|
|
|
|
events {
|
|
worker_connections 1024;
|
|
}
|
|
|
|
http {
|
|
include /etc/nginx/mime.types;
|
|
default_type application/octet-stream;
|
|
|
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
|
'$status $body_bytes_sent "$http_referer" '
|
|
'"$http_user_agent" "$http_x_forwarded_for"';
|
|
|
|
access_log /var/log/nginx/access.log main;
|
|
error_log /var/log/nginx/error.log warn;
|
|
|
|
sendfile on;
|
|
keepalive_timeout 65;
|
|
|
|
# RustFS Server Block
|
|
server {
|
|
listen 80;
|
|
server_name localhost;
|
|
|
|
# Redirect HTTP to HTTPS (optional, uncomment if SSL is configured)
|
|
# return 301 https://$host$request_uri;
|
|
|
|
location / {
|
|
proxy_pass http://rustfs:9000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
|
|
# S3 specific headers
|
|
proxy_set_header X-Amz-Date $http_x_amz_date;
|
|
proxy_set_header Authorization $http_authorization;
|
|
|
|
# Disable buffering for large uploads
|
|
proxy_request_buffering off;
|
|
client_max_body_size 0;
|
|
}
|
|
|
|
location /rustfs/console {
|
|
proxy_pass http://rustfs:9001;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
}
|
|
}
|
|
|
|
# SSL Configuration (Example)
|
|
# server {
|
|
# listen 443 ssl;
|
|
# server_name localhost;
|
|
#
|
|
# ssl_certificate /etc/nginx/ssl/server.crt;
|
|
# ssl_certificate_key /etc/nginx/ssl/server.key;
|
|
#
|
|
# location / {
|
|
# proxy_pass http://rustfs:9000;
|
|
# ...
|
|
# }
|
|
# }
|
|
}
|