黑马商城分为三块
其中,前端部分有二
一、首先将前端项目部署到nginx
写在前面 : linux 安装nginx
安装依赖包
由于nginx是基于c语言开发的,所以需要安装c语言的编译环境,及正则表达式库等第三方依赖库。
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
下载Nginx安装包
yum install wget wget https://nginx.org/download/nginx-1.16.1.tar.gz
wget :
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。
执行完wget指令后,就会在当前所在目录看到下载下来的文件。
解压nginx压缩包
tar -zxvf nginx-1.16.1.tar.gz
配置Nginx编译环境
cd nginx-1.16.1 ./configure --prefix=/usr/local/nginx
** 编译&安装**
make & make install
几个重要nginx指令
以下指令都要在nginx安装目录下的sbin下执行
若想改变,改配置类即可
./nginx 启动nginx
./nginx -s reload 重启nginx
./nginx -s stop 停止nginx
部署静态资源
- 首先将静态资源文件拉入 /usr/local/nginx/html 中
-
配置首页为我们目标文件首页
-
进入 /usr/local/nginx/conf ,配置目标端口
-
在nginx.conf 中可以配置server,注意,原本默认80端口的server可以不用删除,可以配置多个server
-
访问自己的虚拟机ip + 端口,若成功出现相应页面,即成功
这里是 : http://192.168.197.100:9001
二 、解决跨域问题
这里用到网关 gateway
在你的项目中创建网关module
-
导入依赖
<dependencies> <!--网关--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> <!--nacos服务发现依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> </dependencies>
-
编写启动类
package com.hmall.gateway; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class GatewayApplication { public static void main(String[] args) { SpringApplication.run(GatewayApplication.class, args); } }
-
编写配置类 application.yml
这里主要配置两个点
- 路由 routes
- 全局跨域 globalcors
-
server: port: 10010 # 网关端口 spring: application: name: gateway # 服务名 cloud: nacos: server-addr: localhost:8848 # nacos的端口 gateway: routes: - id: item-service # 自己取 uri: lb://itemservice # 和模块服务名必须一致!!! predicates: # 断言 - Path=/item/** globalcors: # 全局的跨域处理 add-to-simple-url-handler-mapping: true # 解决options请求被拦截问题 corsConfigurations: '[/**]': allowedOrigins: # 允许哪些网站的跨域请求 - "http://192.168.197.100:9001" - "http://192.168.197.100:9002" allowedMethods: # 允许的跨域ajax的请求方式 - "GET" - "POST" - "DELETE" - "PUT" - "OPTIONS" allowedHeaders: "*" # 允许在请求中携带的头信息 allowCredentials: true # 是否允许携带cookie maxAge: 360000 # 这次跨域检测的有效期
至此,网关也配置完毕,项目结构基本搭建完成,可以开始写代码啦~~
标签:跨域,server,nginx,gateway,cloud,wget,黑马,商城 From: https://www.cnblogs.com/psuitj/p/project.html