我要做的就是设置一个 nginx 服务器来仅提供静态文件。此 nginx 服务器位于 HAProxy 后面,HAProxy 将所有静态文件请求定向到此 nginx 服务器。
我已经在 Linode DNS 管理器中创建了一个子域名:static.mysite.com 记录,但我不确定究竟该如何处理 nginx 配置文件,下面是我现在所拥有的:
wroker_process 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 60;
gzip on;
gzip_http_version 1.1;
gzip_comp_level 3;
gzip_types text/plain text/html text/css
application/x-javascript text/xml
application/xml application/xml+rss
text/javascript;
server {
listen 8484;
client_max_body_size 1M;
server_name www.mysite.com mysite.com;
access_log /home/www-data/logs/nginx_access.log;
error_log /home/www-data/logs/nginx_error.log;
location / {
index index.html;
}
location ~* /static/ {
autoindex on;
alias /home/www-data/mysite/static/;
access_log on;
}
location = /favicon.ico {
rewrite (.*) /static/favicon.ico;
}
location = /robots.txt {
rewrite (.*) /static/robots.txt;
}
}
}
请注意,目前所有对静态文件(到www.mysite.com/static/...
)的请求都映射到 处可用的资源/home/www-data/mysite/static/...
。同样,对 的请求www.mysite.com/favicon.ico
也映射到/home/www-data/mysite/static/favicon.ico
。
如何更改上述内容以对所有静态文件使用子域?例如,static.mysite.com/...
映射到/home/www-data/mysite/static/...
?