Apache 和 Node.js 在同一服务器上

2023-12-25

我想使用 Node,因为它速度很快,使用与我在客户端使用的语言相同的语言,并且根据定义它是非阻塞的。但是我雇来编写文件处理程序(保存、编辑、重命名、下载、上传文件等)的人,他想使用 apache。所以,我必须:

  1. 说服他使用 Node(他对此几乎没有放弃)

  2. 了解如何在节点或中上传、下载、重命名、保存等文件

  3. 我必须在同一台服务器上安装apache和node。

哪种情况最有利?我该如何实施?


好问题!

有许多用 PHP 实现的网站和免费 Web 应用程序在 Apache 上运行,很多人都使用它,这样您就可以非常简单地混搭一些东西,此外,它是提供静态内容的一种简单的方式。 Node 是快速、强大、优雅且性感的工具,具有 V8 的原始功能和没有内置依赖项的扁平堆栈。

我还想要 Apache 的易用性/灵活性以及 Node.JS 的简洁和优雅,为什么我不能两者兼得?

幸运的是,随着代理通行证 http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypassApache 中的指令httpd.conf将特定 URL 上的所有请求传送到 Node.JS 应用程序并不难。

ProxyPass /node http://localhost:8000

另外,请确保以下行未被注释掉,以便您获得正确的代理和子模块来重新路由 http 请求:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

然后在端口 8000 上运行您的 Node 应用程序!

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello Apache!\n');
}).listen(8000, '127.0.0.1');

然后您可以使用以下命令访问所有 Node.JS 逻辑/node/url 上的路径,网站的其余部分可以留给 Apache 来托管您现有的 PHP 页面:

现在剩下的唯一一件事就是说服您的托管公司让您使用此配置运行!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache 和 Node.js 在同一服务器上 的相关文章

  • 将文件从 url 上传到 s3 存储桶

    我有一个在 Heroku 中运行的 Nodejs 程序 它为我提供了文件的 URL 这些文件需要存储在 s3 存储桶中 据我了解 无法将文件从 url 直接上传到 s3 存储桶 您建议我如何将文件从 URL 获取到 s3 存储桶 我见过有关
  • 特定文件夹的 .htaccess 例外

    这是我的 htaccess 代码 位于根文件夹中
  • Ubuntu + SVN:无法打开请求的 SVN 文件系统

    我知道这个问题已经被问过很多次了 我相信我明白答案 但我仍然没有运气 我都尝试过one repo and multiple repos配置 两者都有相同的问题 因此 对于我感兴趣的配置
  • Node.js 有水豚吗?

    有谁知道 Node js 是否有类似 capybara 的东西 怎么样Zombie http zombie labnotes org 僵尸 js 使用 Node js 进行极其快速的无头全栈测试 The Bite 如果你要编写一个速度极快的
  • 以html格式显示npm审计漏洞

    有没有办法将 npm 审计报告显示为 html 页面 目前我只能看到使用以下命令以 json 格式输出报告的选项 npm audit json 我写了一个NPM包 https www npmjs com package npm audit
  • 在node.js中使用pug在表单“post”之后发送空的{}

    我正在尝试使用 fetch 和以下 pug 代码通过 post 将表单数据从登录页面传递到登录页面 form id form login input type text name email value placeholder Tu ema
  • Redis 客户端忽略其上设置的配置选项并尝试连接到默认 IP 127.0.01

    在AWS中 我使用ElastiCache Redis服务器并使用节点作为后端和 promise redis 包 这就是我尝试连接到我的 redis 服务器端点的方法 client redis createClient host my red
  • 如何在 Jenkins 服务器上运行 Jest 测试

    我正在尝试运行我的Jest https facebook github io jest 在 Jenkins 部署期间进行测试 如果我 ssh 进入服务器 我可以 sudo 进入 Jenkins 用户并从工作区成功运行测试 但是 当我尝试从
  • Angular2 + Laravel 与实时和 WebSockets

    我构建了一个应用程序 并计划与 Angular 2 和 laravel 进行实时战斗 例如 你按下 攻击 按钮 你的对手就会实时看到他的生命在下降 我的应用程序构建有 前端 角2 Backend PHP Laravel 5 2 现在我正在寻
  • PHP、htaccess:在 URL 中应用页面标题

    我想在 URL 中应用页面 HTML 标题 例如 在这里 stackoverflow url 是这样的 http stackoverflow com questions 10000000 get the title of a page ur
  • NodeJs 控制台中的 GET /bla - - ms - - 是什么意思?

    当我进入页面时 bla在我的 NodeJS 应用程序中 控制台打印出 GET bla ms 用文字来说 为了更容易谷歌搜索 dash dash ms dash dash 这是什么意思 这是输出morgan https github com
  • 如何在 apache 上为锚点 cms 重写指令

    我使用的是一个名为anchor的cms http anchorcms com docs getting started configuration http anchorcms com docs getting started config
  • 有人在node/socket.io 中成功实现了动态命名空间吗?

    含义 用户对应用程序进行身份验证 gt 应用程序设置socket io连接的命名空间 http www socketioserver com NAMESPACE 并且节点服务器相应地响应无需针对特定名称空间进行硬编码 到那个特定的命名空间
  • nodejs mocha suite 未定义错误

    我正在尝试使用摩卡运行一些测试 但似乎无法克服这个错误 E tdd nodejs cart gt mocha cart test js node js 201 throw e process nextTick error or err Re
  • Nodejs 一个接一个地运行异步函数

    我是 JS nodejs 的新手 所以如果我不能提出切中要害的问题 请原谅我 所以基本上 如果我有两个异步函数 async function init async function main 如何确保在 init 完成其异步请求后调用 ma
  • Apache 从子域重写为 www 但保留所有永久链接

    我已经研究了大约 2 个小时 虽然大多数主题都很相似 但没有一个解释如何做我想做的事情 我正在将一个结构为 blog domain com 的博客移至 www domain com blog 当我重定向时 我需要保留博客文章的永久链接 所以
  • npm install 命令下载所需包的源位置是什么?

    我试图获取命令 npm install 尝试连接的源位置 URL 并根据 package json 文件获取要下载的依赖包 并将其放置在本地框中 从下面提到的网址 http www tutorialspoint com nodejs nod
  • apache_request_headers() 与 $_SERVER

    据我所知 apache request headers 提供与以下相同的信息 SERVER 但按键略有不同 为什么有人应该使用apache request headers 而不仅仅是从那里获取这些信息 SERVER 我在 Centos 上使
  • 如何在Sequelize中设置查询超时?

    我想看看如何在 Sequelize 中设置查询的超时时间 我查看了 Sequelize 文档以获取一些信息 但我找不到我要找的东西 我发现的最接近的是 pools acquire 选项 但我不想设置传入连接的超时 而是设置正在进行的查询的超
  • Mongoose 独特的验证不起作用。保存重复条目

    我正在开发一个 NodeJS 应用程序 其中express是框架 MongoDB是数据库 我正在使用猫鼬插件 我有一个父母模型 我已经添加了独特 真实到场 mobile 但是每当我添加相同的手机号码时 唯一性验证就会失败 除了保存重复的文档

随机推荐

  • C++ 二元运算符的优先顺序

    以下参数按什么顺序测试 在 C 中 if a b c 我刚刚在我们的应用程序中看到了这段代码 我讨厌它 我想添加一些括号来澄清顺序 但我不想添加括号 直到我知道我将它们添加到正确的位置 编辑 接受答案并跟进 此链接提供了更多信息 但并不完全
  • Flask - 输入数据比 @api.expect 更严格?

    在我的 Flask restplus API 中 我不仅想检查输入数据 如下例所示 resource fields api model Resource name fields String default string name requ
  • 在 IntelliJ IDEA 中找不到“将项目与 Gradle 文件同步”按钮

    我刚刚添加了google play services lib我将库添加到我的项目中 并陷入了我需要 将项目与 gradle 文件同步 的位置 但 IntelliJ 13 0 1 上不存在此按钮 这个功能有替代方案吗 作为替代方案 您可以使用
  • 如何在 TensorFlow 中对批次进行切片并对每个切片应用操作

    我是 TensorFlow 的初学者 我正在尝试实现一个以批次作为输入的函数 它必须将此批次分成几个批次 对它们应用一些操作 然后将它们连接起来以构建一个新的张量以返回 通过我的阅读 我发现有一些实现的函数 如 input slice Pr
  • MVC3 - AJAX 部分视图正在缓存......我无法阻止它

    我正在使用 MVC3 我有一个 javascript 函数 它使用 jQuery get 从控制器获取 PartialView 问题是它正在被缓存 并且我不断地取回陈旧的内容 我已经在该操作上尝试了 OutputCache Duration
  • r编程:多个子字符串

    我有一个文本文档 我想对其进行子字符串化 我使用以下代码来子串 substr text start start end start 有一个包含 60 个元素的向量 然而 上面的代码只返回等价的substr text 1109 1109 19
  • 如何使用 JavaScript 来 getElementByClass 而不是 GetElementById?

    我试图根据每个 DIV 的类来切换网站上某些 DIV 元素的可见性 我使用一个基本的 JavaScript 片段来切换它们 问题是该脚本仅使用getElementById as getElementByClassJavaScript 不支持
  • varchar(5) 和 varchar(5000) 之间的区别? [复制]

    这个问题在这里已经有答案了 可能的重复 varchar 500 比 varchar 8000 有优势吗 https stackoverflow com questions 2009694 is there an advantage to v
  • 当这个程序在 Windows 上运行时,为什么会出现回车符?

    我编写了以下程序将十六进制字符串转换为相应的二进制数据 include
  • Python 查找和替换脚本中的正则表达式?更新

    我是 Python 脚本新手 所以如果这个问题的答案看起来本质上是显而易见的 请提前原谅我 我正在尝试使用 Python 编写一个大规模的查找和替换脚本 我正在使用类似于以下的代码 infile sys argv 1 charenc sys
  • 将 Metaltexture2d_array 传递给 SceneKit 着色器修改器

    我想创建着色器修改器SCNMaterial with SCNShaderModifierEntryPointSurface 并通过金属texture2d array作为自定义输入 为了实现这一点 我尝试使用类型的键值编码设置参数SCNMat
  • 与屏幕相同的打印 CSS

    似乎确实应该有一个简单的解决方案来解决这个问题 但到目前为止我还没有成功找到一个 我正在使用 Zurb Foundation 基本上是在创建一个实时表单 该表单从表单 上面 中获取输入 并使用 angular js 填充内容 下面 然后 用
  • 如何从使用 Template Haskell 生成的代码创建非 TH 包?

    我正在制作一个小包 它定义元组的包装器并添加它们的实例 例如 newtype Tuple2 a Tuple2 untuple2 a a deriving tuple2 a gt a gt Tuple2 a tuple2 instance T
  • Android 音调生成器崩溃

    几天前 我收到了我发布的应用程序的崩溃日志 错误来自ToneGenerator 我找不到问题所在 在这里 我有一个倒计时器 当计时器达到 0 时 应用程序启动一个 ToneGenerator private void lanceMinute
  • 如何为 Java 类字段生成准确的泛型表达式?

    我试图在运行时推理泛型 有几个很棒的库可以做到这一点 例如 gentyref https code google com p gentyref 同学 https github com cowtowncoder java classmate
  • 如何根据名称为单个条形着色[重复]

    这个问题在这里已经有答案了 我有以下数据框生成以下图 Import pandas library import pandas as pd import numpy as np import matplotlib pyplot as plt
  • 如何启用映射实体的私有属性

    一开始我不得不对我的英语说抱歉 我正在使用实体框架和代码优先的方式 我脑子里有一个想法 但我不知道如何实现它 我不是编程初学者 但我一直在使用流利的 NHibernate 我有一个实体 public class User Key publi
  • Excel 互操作:Range.FormatConditions.Add 抛出 MissingMethodException

    我正在编写一个应用程序 它使用 Microsoft Office Interop Excel 程序集从 Excel 电子表格导出 导入数据 一切都很顺利 除了基于 1 的索引和所有这些可选参数 直到我尝试使用条件格式 当我调用 Range
  • 什么是有效的 HTML5 自定义标签?

    最近 我一直在阅读有关如何通过在名称中添加破折号来使自定义标签在 HTML5 中有效的内容 因此我一直想知道自定义标签的实际规则 指南是什么 custom tag custom X custom custom 我想知道的是最后两个是否有效
  • Apache 和 Node.js 在同一服务器上

    我想使用 Node 因为它速度很快 使用与我在客户端使用的语言相同的语言 并且根据定义它是非阻塞的 但是我雇来编写文件处理程序 保存 编辑 重命名 下载 上传文件等 的人 他想使用 apache 所以 我必须 说服他使用 Node 他对此几