Tôi có nginx và chạy với ứng dụng Ruby / Sinatra và tất cả đều ổn. Tuy nhiên, bây giờ tôi đang cố gắng để có một ứng dụng thứ hai chạy từ cùng một máy chủ và tôi nhận thấy một điều kỳ lạ. Đầu tiên, đây là nginx.conf của tôi:
pid /tmp/nginx.pid;
error_log /tmp/nginx.error.log;
events {
worker_connections 1024;
accept_mutex off;
}
http {
default_type application/octet-stream;
access_log /tmp/nginx.access.log combined;
sendfile on;
tcp_nopush on;
tcp_nodelay off;
gzip on;
gzip_http_version 1.0;
gzip_proxied any;
gzip_min_length 500;
gzip_disable "MSIE [1-6]\.";
gzip_types text/plain text/xml text/css
text/comma-separated-values
text/javascript application/x-javascript
application/atom+xml;
upstream app {
server unix:/var/www/app/tmp/sockets/unicorn.sock fail_timeout=0;
}
server {
listen 80;
client_max_body_size 4G;
server_name FAKE.COM;
keepalive_timeout 5;
root /var/www/app/public;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app;
break;
}
}
error_page 500 502 503 504 /500.html;
location = /500.html {
root /var/www/app/public;
}
}
}
68,0-1 B
Lưu ý cách server_name
cài đặt thành FAKE.COM
máy chủ đang phản hồi với tất cả các máy chủ truy cập máy chủ đó thông qua các tên miền khác. Làm cách nào tôi có thể khiến máy chủ cụ thể đó chỉ phản hồi các yêu cầu FAKE.COM
?
listen fake.com | something.com:80
bộ lọc lệnh, khôngserver_name
.