Articles of angularjs

docker工人的angular度应用程序 – 生产和发展

我有一个简单的AngularJS应用程序。 后端可以像一个服务(外部API)对待,所以根本不需要服务器端。 我想运行在docker上,但是,我不知道这里最好的做法是什么。 我期望达到的是以下几点: Docker应该能够运行我在本地使用nodejs进行的所有操作 – 使用webpack / grunt / gulp,而不需要在本地机器上安装任何东西。确保每个团队成员都在基本上所有的相同版本上工作。 docker工人应该能够轻松地部署到生产环境中,并尽可能轻松地运行(它只是静态内容!) 真正的问题是,据我所知,开发的docker应该基于nodejs与安装量和一切..但是,生产docker应该是超级简单的nginx服务器,提供静态内容。 所以我可能会得到一个2个独立的docker使用相同的代码库。 不知道这是否正确的路要走.. 任何人都可以在这个话题上谈一谈? 谢谢

两个文档根与nginx和fastcgi

我在docker环境中使用nginx和php,对于单个应用程序来说工作正常。 现在我想开发一个基于yii2 / php的应用程序,作为后端和angular作为前端,所以我需要一个web服务器为客户端服务,另一个服务于API后端。 目录结构如下所示: /var/www/html/ $ tree -L 3 . ├── client │ ├── dist │ │ ├── 0.chunk.js │ │ ├── 0.chunk.js.map │ │ ├── assets │ │ ├── index.html │ │ ├── … │ ├── e2e │ │ ├── … │ ├── node_modules │ │ ├── … ├── docker │ ├── mysql […]

使用Nginx作为代理来避免CORS

我有这个: 现在我想使用我在那里的nginx服务器来提供所有的静态文件,并将所有的请求代理到api.stuff.com。 这可能吗? nginx是做这件事的最佳工具吗? configuration是什么? 谢谢!

'Access-Control-Allow-Origin'头部包含多个值 – nginx + sails.js

我使用Chrome浏览器浏览了两个域: 客户端: http://vb.localhost:909 (angular.js) 后端: http://db.localhost:909 / matches (sails.js,端口1337上的节点应用程序) 一切都由nginx服务。 我得到以下错误: XMLHttpRequest无法加载http://db.localhost:909 / matches 。 “Access-Control-Allow-Origin”标题包含多个值“*”,但只允许有一个值。 原因' http://vb.localhost:909 '因此不被允许访问。 这是两个服务器块的nginx.conf: server { listen 909; server_name vb.localhost; location / { root "\apps\vb-site\UI\dev"; index index.html; } } server { listen 909; server_name db.localhost; add_header Access-Control-Allow-Origin *; location / { proxy_pass http://127.0.0.1:1337; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header […]

在Laravel中不允许“Access-Control-Allow-Origin”标头

我怎样才能允许laravel No 'Access-Control-Allow-Origin' header is present on the requested ? 因为当我尝试$http.get()使用angular.js一个特定的URL我总是得到它的错误。

Angular2应用程序的configuration – nginx和docker

我有一个REST后端服务位于一些服务器和前端应用程序的angular度。 我正在使用Angular CLI来构build应用程序。 我的后端服务器的位置位于环境文件中。 我的应用程序的要求是,我提供了两个docker图像。 一个与我的后端服务器(Java的春季启动应用程序)和第二个是与ng build myApp命令的静态html生成。 然后,我将内容od dist目录复制到docker映像上的相应目录中,如此处所示的Nginx docker映像 。 问题是,后端和前端可能在不同的服务器上工作。 有什么办法可以configuration我的前端应用程序,我可以更改后端服务器的位置,每个容器的开始?

外部CSS文件没有加载链接标记

我正在与Angular开始一个新项目,并面临一个问题。 当我试图加载一个外部的CSS文件<link>它不起作用,但是当我使用@import的内部样式它工作! 不适用于: <link rel="stylesheet" type="text/css" src="transmission.min.css"> 适用于: <style>@import url('transmission.min.css');</style> 我的文件位于相同的目录(应用程序的根目录): / /index.html /transmission.min.css /transmission.min.js 我的CSS和JS文件连接,并与grunt缩小,但我没有它和相同的结果尝试。 这是我的index.html文件: <!doctype html> <html> <head> <title>Transmission</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" type="text/css" src="transmission.min.css"> <style> @import url('transmission.min.css'); </style> <base href="/"> </head> <body ng-app="transmission"> <div ng-view=""></div> <script src="transmission.min.js"></script> </body> 我的CSS文件只包含body{background-color: red;} 我检查了我的nginxconfiguration两次,一切似乎都很好。 我也检查了与Safari检查员,我可以访问http://transmission.dev/transmission.min.css的CSS文件。 但是它不会出现在资源选项卡中。 此外我的Angular应用程序加载完美。 如果你有什么想法? 😀 谢谢

Nginx的重写规则为AngularJS和html5mode启用

到目前为止,我正在用nginx构buildAngularJS应用程序。 我有中间的铁轨,我带着rewrite ^/(?!assets) / last; 重写规则(重写所有期望以资产开始的东西),到目前为止它正在工作 – 使用rails: server { listen 80; server_name ies.local; root /home/jk/Projects/ies12/webapp/public; # <— be sure to point to 'public'! passenger_enabled on; rails_env development; rewrite ^/(?!assets) / last; } 但到了今天,我离开了铁轨,我需要延长这一规则.. 如果我做了类似的事情 server { listen 80; server_name webapp.local; root /home/jk/Projects/webapp; rewrite_log on; rewrite ^/(?!angular) / last; rewrite ^/(?!angular-ui) / last; } 有webapp […]

AngularJS + Ngingx CORS

我试图进行以下设置: API api.domain.com APP domain.com 我已经设置了2个不同的nginxconfiguration,每个2个URL都有一个configuration。 他们都在浏览器(api.domain.com/test)中定期发送GET请求时工作,但是在使用angularjs(POST)进行$ resource调用时,这些请求都会崩溃。 这返回一个 not allowed by Access-Control-Allow-Origin. 我已经有一段时间了,一直在玩弄不同的configuration文件。 我目前正在使用下面的文件,但我不知道这是否应该工作。 http://paste.laravel.com/h6U 任何帮助将不胜感激

AngularJS应用程序中的资源脚本是相对的还是绝对的?

我正在构build一个AngularJS单页面JavaScript应用程序,所以index.html看起来像这样: <html> <head> <base href="/" /> … </head> <body id="ng-app" ng-app="myAngularApp"> <div class="holder"> //templates from app.js are rendered here </div> <script src="bower_components/angular/angular.js"></script> <script src="bower_components/angular-route/angular-route.js"></script> <script src="bower_components/angular-resource/angular-resource.js"></script> <script src="scripts/app.js"></script> </body> </html> 我以HTML5模式运行这个应用程序,并且遇到了遗留浏览器回退的麻烦。 每当我在IE8中浏览到像$APPURL$/login这样的位置,它正确地重写为$APPURL$/#!/login ,但是当我像$APPURL$/locations/my/home一样嵌套时,它什么也不做甚至没有bootstrap),因为它无法在这个特定的path中findscipts。 我解决了这个问题,通过使我的脚本的绝对参考(前缀与/ ),但我看的所有Angular应用程序的例子使用相对path,而不是我的例子。 我用NGINX服务我的应用程序,并从众多的例子中得到如下configuration: location / { try_files $uri $uri/ /index.html; root /home/web/appdir; } 使用绝对path有什么缺点吗? 另外,为什么这是必要的? 我真的需要传统的浏览器支持,但要继续使用HTML5模式…..