我有这个:
现在,我想使用在那里的Nginx服务器来提供所有静态文件,并将所有请求代理到api.stuff.com.这可能吗? nginx是执行此操作的最佳工具吗?配置是什么?
谢谢!
最佳答案
一种方法是告诉nginx将代理调用实际代理到api,例如,如果您要调用api.domain.com/users,则应调用example.com/users,nginx会将/ users调用代理到api,因为它不在本地存在,因此此方法当然很难维护,因为您需要对自己进行映射.
server {
server_name example.com;
root /path/to/root;
location / {
try_files $uri @proxy_to_api;
}
location @proxy_to_api {
# add whatever proxy settings you want
proxy_pass http://api.domain.com;
}
}
另一种方法是告诉nginx告诉您的客户端可以调用api服务器,这样您的客户端就可以自行访问api.domain.com,而无需nginx的帮助
add_header 'Access-Control-Allow-Origin' "api.domain.com";