如果您想了解如何在同一台服务器上使用nginx将php和nodejs应用程序一起configuration的相关知识,那么本文是一篇不可错过的文章,我们将对两台nginx服务用同一个域名进行全面详尽的
如果您想了解如何在同一台服务器上使用nginx将php和nodejs应用程序一起configuration的相关知识,那么本文是一篇不可错过的文章,我们将对两台nginx服务用同一个域名进行全面详尽的解释,并且为您提供关于Angular2应用程序的configuration – nginx和docker、Apache 和 Node.js 在同一台服务器上、Apache和Yeoman在同一台服务器上构buildNodeJS应用程序…虚拟主机?、ClientCnxn: SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration ??的有价值的信息。
本文目录一览:- 如何在同一台服务器上使用nginx将php和nodejs应用程序一起configuration(两台nginx服务用同一个域名)
- Angular2应用程序的configuration – nginx和docker
- Apache 和 Node.js 在同一台服务器上
- Apache和Yeoman在同一台服务器上构buildNodeJS应用程序…虚拟主机?
- ClientCnxn: SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration ??
如何在同一台服务器上使用nginx将php和nodejs应用程序一起configuration(两台nginx服务用同一个域名)
我有一个Ubuntu的VPC。 我有一个nodejs应用程序运行在一些文件夹中。 我有一个PHP应用程序运行在Apache / var / www。 我想要的是configurationNginx,以便当用户来到mydomain.com,他/她被redirect到我的节点应用程序运行在端口3000上,当用户访问mydomain.com/docs时,他/她被redirect到我的PHP在端口80上的Apache上运行的应用程序。
server { listen 80; root /var/www; location / { try_files $uri $uri/ /index.html; } location ~.PHP$ { fastcgi_split_path_info ^(.+.PHP)(/.+)$; fastcgi_pass unix:/var/run/PHP5-fpm.sock; fastcgi_index index.PHP; include fastcgi_params; } location /doc/ { alias /usr/share/doc/; autoindex on; allow 127.0.0.1; deny all; } location ~/.ht { deny all; } }
我的nodejs应用程序的conf文件是:
upstream app_somedomain { server 127.0.0.1:3000; } server { listen 0.0.0.0:80; server_name mydomain.com mydomain; root /some/path; index index.html index.htm index.PHP index.js; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Nginx-Proxy true; proxy_pass http://app_somedomain/; proxy_redirect off; } }
我第一次使用Nginx。 我仍然无法理解如何做到这一点。 至于在如何将我的nodejs应用程序运行在端口3000上我的域名和mydomain /文档到我的PHP应用程序。
谢谢。
在PHP中parsingHTTP_RANGE头
SVN导入:“错误:无法打开请求的SVN文件系统”
Apache多个DocumentRoot
如何以编程方式比较两个基于视觉差异的PDF?
问题安装OpenNLP
Django静态文件托pipe一个Apache
www-data下的apache2多个实例
设置默认的Apache RewriteRule条目
url重写的build议,请
在apache中build立一个基本的web代理
Angular2应用程序的configuration – nginx和docker
我有一个REST后端服务位于一些服务器和前端应用程序的angular度。 我正在使用Angular CLI来构build应用程序。 我的后端服务器的位置位于环境文件中。 我的应用程序的要求是,我提供了两个docker图像。 一个与我的后端服务器(Java的春季启动应用程序)和第二个是与ng build myApp命令的静态HTML生成。 然后,我将内容od dist目录复制到docker映像上的相应目录中,如此处所示的Nginx docker映像 。
问题是,后端和前端可能在不同的服务器上工作。 有什么办法可以configuration我的前端应用程序,我可以更改后端服务器的位置,每个容器的开始?
在Windows上与Docker联网
WidNows上的Postgresql泊坞窗容器
Nginx作为docker上游代理与地图
在Docker Container中运行命令
运行泊坞窗容器上的错误500
我知道这是一个古老的问题,但是我面对同样的问题,花了一段时间才解决。 这可以帮助那些来自搜索引擎的人。
我找到了两个解决方案(我选择了第二个)。 两者都允许您在docker中使用环境变量来配置您的API URL。
解决方案1(“客户端”):env.js asset + sed
这个想法是让你的Angular客户端从你的HTTP服务器加载一个env.js文件。 这个env.js将包含API URL,并且在你的容器启动时将会被修改。 这是你在问题评论中讨论的内容。
在角度应用资源文件夹中添加一个env.js (angular-cli的src/assets ):
var MY_APP_ENV = { apiUrl: 'http://localhost:9400',}
在你的index.html ,你将加载你的env:
<head> <Meta charset="utf-8"> <base href="/"> <script src="env.js"></script> </head>
在你的environment.ts中,你可以使用这个变量:
declare var MY_APP_ENV: any; export const environment = { production: false,apiUrl: MY_APP_ENV.apiUrl };
在你的Nginx Dockerfile中:
FROM Nginx:1.11-alpine copY tmp/dist /usr/share/Nginx/html copY run.sh /run.sh CMD ["sh","/run.sh"]
run.sh脚本是sed魔法发生的地方:
#!/bin/sh # API /bin/sed -i "s|http://localhost:9400|${MY_API_URL}|" /usr/share/Nginx/html/env.js Nginx -g 'daemon off;'
在您的角度服务中,使用environment.apiUrl连接到API(您需要导入环境,请参阅Angular 2文档)。
解决方案2(纯服务器端):Nginx代理配置+ envsubst
我对之前的解决方案不满意,因为API URL需要从主机的角度来看,它不能在我的docker-compose设置中使用另一个容器主机名。
所以我想:很多人使用Nginx作为代理服务器,为什么不用这种方式代理/api到我的其他容器。
Dockerfile:
FROM Nginx:1.11-alpine copY tmp/dist /usr/share/Nginx/html copY frontend.conf.template /etc/Nginx/conf.d/frontend.conf.template copY run.sh /run.sh CMD ["/bin/sh","/run.sh"]
frontend.conf.template:
server { listen 80; server_name myserver; # API server location /api/ { proxy_pass ${MY_API_URL}/; } # Main location / { root /usr/share/Nginx/html; index index.html index.htm; try_files $uri$args $uri$args/ /index.html; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/Nginx/html; } }
run.sh:
#!/bin/sh # Substitute env vars envsubst '$MY_API_URL' < /etc/Nginx/conf.d/frontend.conf.template > /etc/Nginx/conf.d/default.conf # Start server Nginx -g 'daemon off;'
envsubt允许你用一个类似shell的语法来替换字符串中的环境变量。
然后使用/api/xyz从Angular应用程序连接到API。
我认为第二个解决方案更清洁。 API URL可以是docker-compose设置中的API docker容器名称,这很好。 客户端不参与,它是透明的。 但是,这取决于Nginx。
Apache 和 Node.js 在同一台服务器上
我想使用Node,因为它速度很快,使用与我在客户端使用的语言相同的语言,并且根据定义它是非阻塞的。但是我雇来编写文件处理程序(保存、编辑、重命名、下载、上传文件等)的人,他想使用
apache。所以,我必须:
-
说服他使用 Node(他在这方面几乎没有放弃)
-
弄清楚如何在节点或节点中上传、下载、重命名、保存等文件
-
我必须在同一台服务器上安装 apache 和 node。
哪种情况最有利,我该如何实施?
Apache和Yeoman在同一台服务器上构buildNodeJS应用程序…虚拟主机?
我一直试图在我的apache服务器上添加一个NodeJS应用(由Yeoman – angular-fullstack生成器构build)。 我发现这个其他回答的问题: 同一台服务器上的Apache和Node.jsbuild议使用这样的ProxyPass:
ProxyPass /node http://localhost:8000/
我遇到的问题是,我的应用程序从index.html开始,包含一些带有href的文件。 由于这些hrefs不是这样开始的
href="/node/..."
它们不被Proxypassredirect,从而导致404错误。
我不能只改变所有的hrefs:这意味着我需要在我的3环境中重新开始:开发,生产和testing,即使我这样做,每次我都会使用Grunt来testing我的应用程序,它无论如何自动重build我的index.html。 (此外,这并不能解决所有问题,当我这样做的时候出现了一些问题)
用量angular器如何设置Internet Explorer的configuration?
meteor,Angular路线,Nginx和SSL – 如何路由/重写path到另一台服务器
WSS://my.domain.com/sockjs/362/4q059yw7/websocket
AngularJS:无法加载模板
如何运行Ionic永久服务?
我唯一能做的就是使用这样的ProxyPass:
ProxyPass / http://localhost:8000/
在那里它可以工作,绝对没有问题,就像我实际上使用本地服务器上的应用程序一样。
唯一剩下的问题是我需要在我的服务器上有两个环境,用于生产和testing,而我不能做
ProxyPass / http://localhost:8000/ ProxyPass / http://localhost:8001/
这显然是行不通的,因为一切都会被redirect到8000端口,所以任何事情都可以到达第二线。
所以,我只剩下两个select:
要么find另一种解决scheme,而不是使用“/”作为redirect到本地主机:8000的标准,将以相同的方式工作(我没有发现任何工作)
或者使用虚拟主机…还有另一个问题:我真的不能解决networking问题,据我所知,在同一台机器上有几个虚拟主机,我需要几个CNAMES(每个虚拟主机一个),但我不知道如何列出/添加CNAMES(我的服务器在Windows Server 2008上运行,无法访问万维网),我的“pipe理工具”中没有任何“DNS”应用程序,米应该按照这个: https : //technet.microsoft.com/en-gb/library/cc753579.aspx
任何帮助将非常欢迎提前致谢!
编辑:我真的认为我的解决scheme是抽动我的Apacheconfiguration。 任何人都可以用来处理服务器configuration帮助我吗? :/
在Nginx中不能直接访问angular路由
处理从Nginx到Unicorn(AngularJS to Rails API)的HTTP请求时,只能在Chrome中发生大的延迟
AngularJS应用程序中的资源脚本是相对的还是绝对的?
两个文档根与Nginx和fastcgi
seleniumwebdriverexceptionSessionNotFound在Windows 7 64
似乎我所缺少的是一个
<base href="/node/">
标签(甚至不知道它,和Yeoman创建它)
我仍然有一个问题:
Socket.io …我真的没有在这里得到我自己的问题:它在node_modules(这是正常的,因为我需要在我的服务器和我的客户端),但试图包括它,因为我之前使用基础href失败。 我甚至不知道它是如何工作的:(index.html:) <script src="socket.io-client/socket.io.js"></script>这似乎不正确的知道我的项目文件夹是这样的:
[项目根]
-客户
–index.html
-node_modules
–socket.io客户端
— socket.io.js
总结
以上是小编为你收集整理的Apache和Yeoman在同一台服务器上构buildNodeJS应用程序…虚拟主机?全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
ClientCnxn: SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration ??
zookeeper.ClientCnxn: SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration section named ''Client'' was found in specified JAAS configuration file: ''/etc/kafka/kafka_client_jaas.conf''. Will continue connection to Zookeeper server without SASL authentication, if Zookeeper server allows it.
20/04/07 18:23:56 INFO zookeeper.ClientCnxn: Opening socket connection to server master/192.168.7.202:2181
20/04/07 18:23:56 INFO zookeeper.ClientCnxn: Socket connection established, initiating session, client: /192.168.7.202:44298, server: master/192.168.7.202:2181
20/04/07 18:23:56 INFO zookeeper.ClientCnxn: Session establishment complete on server master/192.168.7.202:2181, sessionid = 0x171294ab3f2fdb6, negotiated timeout = 60000
20/04/07 18:23:57 INFO session.SessionState: Created HDFS directory: /tmp/hive/hbase/6629ad1f-0cf2-4565-a8f7-e79c794805bb
20/04/07 18:23:57 INFO session.SessionState: Created local directory: /tmp/root/6629ad1f-0cf2-4565-a8f7-e79c794805bb
20/04/07 18:23:57 INFO session.SessionState: Created HDFS directory: /tmp/hive/hbase/6629ad1f-0cf2-4565-a8f7-e79c794805bb/_tmp_space.db
20/04/07 18:23:57 INFO lineage.NavigatorQueryListener: Failed to generate lineage for successful query execution.
org.apache.spark.sql.AnalysisException: java.lang.ExceptionInInitializerError: null;
at org.apache.spark.sql.hive.HiveExternalCatalog.withClient(HiveExternalCatalog.scala:108)
at org.apache.spark.sql.hive.HiveExternalCatalog.databaseExists(HiveExternalCatalog.scala:216)
at org.apache.spark.sql.internal.SharedState.externalCatalog$lzycompute(SharedState.scala:114)
at org.apache.spark.sql.internal.SharedState.externalCatalog(SharedState.scala:102)
at org.apache.spark.sql.hive.HiveSessionStateBuilder.org$apache$spark$sql$hive$HiveSessionStateBuilder$$externalCatalog(HiveSessionStateBuilder.scala:39)
at org.apache.spark.sql.hive.HiveSessionStateBuilder$$anonfun$1.apply(HiveSessionStateBuilder.scala:54)
at org.apache.spark.sql.hive.HiveSessionStateBuilder$$anonfun$1.apply(HiveSessionStateBuilder.scala:54)
at org.apache.spark.sql.catalyst.catalog.SessionCatalog.externalCatalog$lzycompute(SessionCatalog.scala:90)
at org.apache.spark.sql.catalyst.catalog.SessionCatalog.externalCatalog(SessionCatalog.scala:90)
at org.apache.spark.sql.query.analysis.QueryAnalysis$.hiveCatalog(QueryAnalysis.scala:63)
at org.apache.spark.sql.query.analysis.QueryAnalysis$.getLineageInfo(QueryAnalysis.scala:88)
我们今天的关于如何在同一台服务器上使用nginx将php和nodejs应用程序一起configuration和两台nginx服务用同一个域名的分享就到这里,谢谢您的阅读,如果想了解更多关于Angular2应用程序的configuration – nginx和docker、Apache 和 Node.js 在同一台服务器上、Apache和Yeoman在同一台服务器上构buildNodeJS应用程序…虚拟主机?、ClientCnxn: SASL configuration failed: javax.security.auth.login.LoginException: No JAAS configuration ??的相关信息,可以在本站进行搜索。
本文标签: