nginx搭建静态文件服务器支持跨域配置

nginx搭建静态文件服务器支持跨域配置

在server模块中添加配置:

add_header 'Access-Control-Allow-Origin' '*';
server {
        listen       80;
        add_header 'Access-Control-Allow-Origin' '*';
        server_name  localhost;
        location / {
			root D:/NginxData/dist;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;	  			
        }
        location /filedata {
            alias   D:\NginxData;
            allow all;
            autoindex on;
        }
        location /nginxData {
            alias   E:\\nginxData;
            allow all;
            autoindex on;
            autoindex_exact_size off;
            autoindex_localtime on;
       }
		
    }
  1. alias D:\NginxData; 这里配置的为D盘NginxData下面为需要作为文件服务器的静态资源;
  2. vue项目路由为history的打包部署到ng下面的时候需要配置root的目录为打包的目录文件,并配置好try_files $uri $uri/ /index.html;以便url解析的路由找不到的时候找dist下面部署的index.html文件(vue的publicPath为"/");
  3. hashchange 是因为浏览器不会对 # 后面的进行请求,但是 history 每个地址都会被浏览器视为一个 get 请求,但是单页面应用只有一个 html,所以我们每个地址都得重定向到这个 html,然后路由根据 url 解析对应的路由文件,渲染到页面中;

nginx常用命令

start nginx    启动
nginx -s quit	关闭
nginx -s reload   重新加载
nginx -t -c filename  测试nginx配置文件是否正确

你可能感兴趣的:(Nginx,nginx,服务器,vue.js)