阿里云配置nginx后springBoot项目报java.lang.IllegalArgumentException异常

阿里云ecs配置nginx后springBoot项目报java.lang.IllegalArgumentException异常

具体异常信息如下

java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a set of origins, list them explicitly or consider using "allowedOriginPatterns" instead.

解决方法

在nginx.conf中添加如下配置:


    server {
        listen       80;
        server_name xxxxxxx.com;
        location / {
            root   html;
            index  index.html index.htm;            
			proxy_pass http://web;

            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            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_set_header Host $host:$server_port;
        }
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 1. 首先安装nginx,可以使用apt-get或yum等包管理器进行安装。 2. 在nginx配置文件中添加以下内容: ``` server { listen 80; server_name yourdomain.com; location / { proxy_pass http://localhost:808; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` 其中,yourdomain.com为你的域名,proxy_pass为你的Spring Boot应用程序的端口号。 3. 保存并退出配置文件,然后重新启动nginx服务。 4. 启动Spring Boot应用程序,确保它正在监听与proxy_pass相同的端口。 5. 现在你可以通过访问yourdomain.com来访问你的Spring Boot应用程序了。nginx将充当反向代理服务器,将所有请求转发到Spring Boot应用程序。 ### 回答2: Nginx 是目前最流行的开源 Web 服务器之一,它可以作为反向代理服务器来加速 Web 应用程序,并支持负载均衡、HTTP 缓存、SSL/TLS 加密等功能。在将 Spring Boot 项目部署到生产环境时,将其与 Nginx 配合使用,可以有效提高应用程序的性能和可靠性。 配置 Spring Boot 项目Nginx 中非常简单,只需按照以下步骤操作即可: 1. 安装 Nginx 并启动。具体安装方法可以参考官网文档或 Linux 发行版的包管理器。启动命令如下: ``` sudo systemctl start nginx ``` 2. 编辑 Nginx配置文件。Nginx配置文件通常位于 /etc/nginx/nginx.conf,我们需要修改该文件,以使其转发请求到 Spring Boot 应用程序。具体配置如下: ``` server { listen 80; server_name example.com; location / { proxy_pass http://localhost:8080; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } ``` 上面的配置文件中,我们使用了反向代理服务器的模式,并将请求转发到 Spring Boot 应用程序的默认端口 8080。同时,我们还配置了一些 Nginx 的头部信息,以方便 Spring Boot 应用程序获取客户端的 IP 地址和其他相关信息。 3. 重新加载 Nginx 配置文件。执行以下命令: ``` sudo nginx -t # 测试配置文件 sudo nginx -s reload # 重新加载配置文件 ``` 4. 启动 Spring Boot 应用程序。Spring Boot 应用程序可以以内置的方式启动,也可以作为系统服务运行。在此不再赘述。 通过上述步骤,我们就可以在 Nginx配置 Spring Boot 项目。当用户发起请求时,Nginx 将会代理该请求,并将其转发到 Spring Boot 应用程序中进行处理。这样可以大大提高 Web 应用程序的响应速度和并发能力,为公司的业务发展提供保障。 ### 回答3: Nginx是一款高性能的Web服务器和反向代理服务器,可以通过一些简单的配置,将多个Spring Boot项目集成在一起,优化网络传输和资源占用,提高系统效率和用户体验。 以下是配置步骤: 1. 安装Nginx 先确保服务器上已经安装了Nginx。如果没有安装,可以通过以下命令进行安装: sudo apt-get install nginx 2. 配置Nginx反向代理 在Nginx配置文件中添加反向代理规则,将请求代理到Spring Boot应用程序。例如,如果Spring Boot应用程序运行在localhost:8080,则可以通过以下配置将请求代理到该应用程序: server { listen 80; server_name localhost; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host:$server_port; } } 3. 配置SSL/TLS 为了提高网站的安全性,可以为Nginx配置SSL/TLS证书。可以通过以下命令生成证书: sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt 然后,在Nginx配置文件中添加以下配置,使其支持HTTPS: server { listen 443 ssl; server_name localhost; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host:$server_port; } } 4. 配置负载均衡 如果存在多个Spring Boot应用程序,可以使用Nginx的负载均衡功能将请求分配给这些应用程序。以下是一个示例配置: upstream backend { server localhost:8080; server localhost:8081; server localhost:8082; } server { listen 80; server_name localhost; location / { proxy_pass http://backend; proxy_set_header Host $host:$server_port; } } 通过以上的配置,可以经过Nginx代理将请求分配给多个Spring Boot应用程序,提高系统的可用性和健壮性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值