是否有可能,如果,如何在此环境中部署节点 + 乘客应用程序(HAProxy 1.4->Apache2)
Is it possible and if, how to deploy Node + Passenger app in this environment (HAProxy 1.4->Apache2)
有些人可能认为这是一个愚蠢的问题,但我是前端的人,我有很多想法。
我已经为客户开发了一个 Node 应用程序,它几乎可以放在生产服务器上了。该服务器是一个专用机器,据我所知,它目前运行着一个高流量的Wordpress博客和一个论坛(也是PHP + MySQL(。
我一直在本地运行我的应用程序,并在为托管在那里的节点应用程序提供 Passenger 构建的主机上运行我的应用程序。我相信在客户服务器上使用 Passenger 进行部署是个好主意。
我已确定客户服务器运行:
HAProxy 1.4->清漆->阿帕奇2
或
HAProxy 1.4->Apache2.
我的知识到此为止,我可以说我真的没有这方面的经验。乘客可以使用 apache 运行,教程似乎非常简单。这是否仅仅意味着所有必须做的是:
1( 在服务器上安装节点和乘客(使用 Apache 模式(
2( 配置阿帕奇
3( 运行应用程序?
它比这更复杂吗?魔法?
谢谢!
这是一个关于如何完成的很棒的教程和视频。
总而言之,他们建议节点应用具有以下结构:
application directory
|
+-- app.js
|
+-- public/
|
+-- tmp/
然后在您的服务器上安装乘客阿帕奇模块。
然后,您需要将 apache 配置为如下所示(假设您的应用程序安装在 /var/www/my_awesome_app
中。
<VirtualHost *:80>
ServerName www.foo.com
DocumentRoot /var/www/my_awesome_app/public
</VirtualHost>
请注意,乘客可能不知道正确的可执行文件在哪里(如节点(。 默认情况下,它将在用户 PATH 中查找,但如果需要,您可以在 Apache 配置文件中像这样配置它。 如果您不知道节点的安装位置,请尝试运行 which node
。
<VirtualHost *:80>
...
PassengerNodejs /usr/sbin/node
...
</VirtualHost>
如果您的节点应用程序使用的是NODE_ENV环境变量,则应注意乘客集默认NODE_ENV=production
。 但是,您可以将其更改为您想要的任何内容,如下所示:
<VirtualHost *:80>
...
PassengerAppEnv staging
...
</VirtualHost>
但是,按照怪胎的惯例,它第一次不会完美运行。 当事情不起作用时,跟踪乘客日志文件,然后谷歌这些错误。 这通常位于 /var/log/apache2/error_log
.您可以通过运行 passenger-config --detect-apache2
来找出错误日志的确切位置。
要实时跟踪日志,请尝试tail -f /var/log/apache2/error_log
。
一点地克服错误,直到你获胜!
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- Emberjs应用程序加载在除Index之外的所有路由上
- 使用电话间隙在Android应用程序中显示SQL Lite的数据
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- angular 1.5应用程序中的导航栏
- 在Web应用程序中使用Highcharts javascript
- angularjs+rails应用程序中未显示模板
- 使用acess代币登录Facebook,并通过网络应用程序离线发布
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- 科尔多瓦页面类应用程序中的多个谷歌地图
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- Angularjs-utils高亮过滤器在搜索时破坏应用程序
- 在phonegap应用程序内部重定向不起作用
- 使用谷歌应用程序脚本从工作表中获取值并将其显示在文本框中
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- Node.js正在更改应用程序以使用集群模块
- 在openshift node js应用程序中获取请求
- 如何在Facebook上的iframe应用程序中使后退按钮返回到上一页
- 是否有可能,如果,如何在此环境中部署节点 + 乘客应用程序(HAProxy 1.4->Apache2)