В нашей локальной установке мы создали чистую клиентскую программу на Angular JS, которая подключается к службам, размещенным на разных серверах.
Чтобы избежать CORS в нашей среде разработчиков, мы настроили Apache как прокси-сервер, как указано ниже
#Apache Configuration
<VirtualHost *:*>
DocumentRoot "../apps"
ProxyPreserveHost On
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
ProxyPass /env2/ https://env2-abc.com/
ProxyPassReverse /env2/ https://env2-abc.com/
ServerName localhost:9000
</VirtualHost>
Я хотел установить nginx для той же конфигурации, но я столкнулся с проблемой CORS
#nginx configuration
server {
rewrite_log on;
listen 9090;
server_name localhost;
root ../apps;
index index.html;
location /env2 {
add_header Access-Control-Allow-Origin *;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https:///env2-abc.com;
}
}
Может кто-то, пожалуйста, помогите мне правильно настроить прокси и обратный прокси. Apache conf работает отлично, но я хочу попробовать nginx для того же.
Заранее спасибо.
Я могу решить вышеупомянутую проблему, используя следующую конфигурацию в файле nginx xonf
server {
rewrite_log on;
listen 9000;
server_name localhost;
root ../apps;
index index.html;
access_log off; # I do not need logging in dev env
error_log off; # I do not need logging in dev env
location /env2/ { # trailing / gets substituted by proxy_pass
proxy_redirect off;
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-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_pass https://env2-abc.com/;
}
}