Nginx 和 Tomcat 配置 CORS 策略,限制特定站点访问
要设置 CORS 策略以允许只有特定的站点可信,您可以按照以下步骤进行设置:
- 打开 Nginx 配置文件,通常位于
/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf。 - 在
server部分添加以下代码块来设置 CORS 策略:
location / {
if ($http_origin ~* (https://172.16.15.87|https://172.16.15.89)) {
add_header Access-Control-Allow-Origin $http_origin;
}
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Credentials 'true';
add_header Access-Control-Allow-Headers 'Origin, X-Requested-With, Content-Type, Accept';
}
- 保存并关闭 Nginx 配置文件。
接下来,您还需要在 Tomcat 中设置 CORS 策略。您可以在 web.xml 文件中添加以下代码块来设置 CORS 策略:
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>https://172.16.15.87,https://172.16.15.89</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,OPTIONS</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Origin, X-Requested-With, Content-Type, Accept</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
保存并重新启动 Tomcat 服务器。
这样,您的 Nginx 和 Tomcat 都将配置 CORS 策略,只允许来自 https://172.16.15.87 和 https://172.16.15.89 的请求。
原文地址: https://www.cveoy.top/t/topic/pZia 著作权归作者所有。请勿转载和采集!