美文网首页
2019-06-11NGINX踩坑记录

2019-06-11NGINX踩坑记录

作者: catlas | 来源:发表于2019-06-11 19:00 被阅读0次

下载了B-JUI前端框架想学习一下,结果解压后直接双击打开index.html文件,提示一个JSON(menu-form.json)未加载成功,左侧目录树出不来,搜索了一下仿佛是跨域问题

网上说即便是同一个网站的内容,用AJAX请求JSON的时候也是跨域,感觉真是坑

但是捣鼓了半天也没解决。把解压后的整个文件夹放到本地测试环境中的网站目录里,访问的时候也同样提示405 NOT ALLOWED

又是一顿搜索,一会儿觉得是跨域,但是配置NGINX跨域的教程真的跟看天书一样,感觉自己真的是老了。。。

后来发现,在chrome调试界面把对于这个JSON的请求方式由POST强制改为GET就OK。然后又是一顿搜索,发现NGINX果然默认是不支持POST访问静态资源的。于是按照教程,在NGINX配置文件中加入:

error_page 405 =200 @405;

        location @405 {

        root 网站根目录路径;

        proxy_method GET;

        proxy_pass 网站域名;

    }

重启NGINX:sudo nginx -s reload

问题解决!

小结一下知识点:

1.跨域问题是浏览器造成的,不同浏览器的跨域策略不同,有的严格,例如chrome,有的不是那么严,例如edge和ff,主要还是考虑安全问题。

2.用AJAX请求静态资源推荐用GET,而不是POST,至于为什么B-JUI要设置POST请求一个JSON,我猜测可能是因为网站后台管理目录有时候需要针对不同的权限进行微调,例如网站管理员可以对网站全局进行配置,而一般编辑就不行,所以可以考虑用一个php来根据用户登陆的权限来动态生成JSON,但是在哪里把请求地址由原来的menu-form.json改为动态的php文件还要研究一下。

3.nginx默认是不支持用POST方法请求静态文件的,这点貌似跟Apache不同,需要进行如上的手动配置。ubuntu系统nginx的配置文件在/etc/nginx/目录中,ls一下文件名都很好理解。

就这么多把,接下来就要开始学习b-jui框架了,要学的东西真多。。。感觉快学不过来了

相关文章

  • 2019-06-11NGINX踩坑记录

    下载了B-JUI前端框架想学习一下,结果解压后直接双击打开index.html文件,提示一个JSON(menu-f...

  • 2020-10-19随笔 踩坑0传值

    踩坑:当值传入0时,if条件判断时候会自己转换,记录踩坑。

  • Weex入门踩坑记录

    Weex入门踩坑记录

  • Flutter 开发记录

    Flutter 开发踩坑记录(干货总结)

  • 日常bug记录

    想记录日常碰到的bug,坑踩多了,以后应该碰到坑就比较容易处理或者会少踩坑,后面会慢慢记录bug,截图bug以及最...

  • 没事请多踩踩坑!

    人生事不尽意,别人挖坑我踩坑。 请在这里留下你的踩坑记录,让别人少入坑。

  • Windows下GithubPages博客快速搭建

    Windows下开发坑总是比较多的,但是本人没Mac,只好踩一遍坑记录下。本文主要是安装过程&踩坑记录,故不对细节...

  • Retrofit Https踩坑记录

    Retrofit Https踩坑记录 前言 新司机上路,坑多,本文重点是踩坑,不详细讲retrofit用法,本文不...

  • 个人博客标签分类

    【小结】零碎的小结 【踩坑记录】报错等记录,防止再度踩坑 【总结】比较完整的总结 【想法】自己的一些想法和推论 【...

  • 踩坑记录

    如果当前页面是push出的页面,切换根视图控制器没问题;如果当前页面是present出的页面,切换跟视图控制器之前...

网友评论

      本文标题:2019-06-11NGINX踩坑记录

      本文链接:https://www.haomeiwen.com/subject/rprcfctx.html