问题标签 [starman]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6717 浏览

perl - 为什么将 nginx 与 Catalyst/Plack/Starman 一起使用?

我正在尝试使用 Plack/Starman 部署我的小型 Catalyst Web 应用程序。所有文档似乎都建议我想将它与 nginx 结合使用。这样做有什么好处?为什么不在端口 80 上直接使用 Starman?

0 投票
2 回答
1401 浏览

perl - uri_for 包括重定向端口号

我正在尝试使用 nginx 作为静态文件的前端 Web 代理,并使用 Starman 作为我的后端 Web 服务器来实现 Catalyst 应用程序。(我可以使用 Apache 和 FastCGI,它工作得很好,但我真的很想解决整个 PSGI / Plack 和 Starman 的问题)

Starman 启动正常,可以很好地处理我的请求http://localhost:5000。当我启动 nginx 用作我的前端代理时,无论何时何地使用该$c->uri_for方法,我的 url 都会变得丑陋并与端口号 (5000) 混淆。

例子 :

我有一些正在创建的日志,所以我可以看到什么X-Forwarded-HostX-Forwarded-For被设置为。对于普通请求,设置了值(来自 nginx),但无论何时使用该$c->uri_for方法,这些值都不存在。

有没有其他人有这个问题?
我在配置 nginx 或 Catalyst conf 时是否遗漏了其他内容?

谢谢!

nginx 配置:

事件虽然这将在同一物理服务器上运行,但在 MyApp 配置中我已设置:

版本:

0 投票
3 回答
1678 浏览

perl - 我在哪里可以找到使用 Nginx、Starman、Plack 和 Catalyst 的应用程序运行时错误?

我已经成功地使用Plack + Starman在我的开发机器上为我的 Catalyst 应用程序提供服务,使用的是我在 Dave Rolsky 的 Silki 发行版中找到的守护程序脚本

然后我将 nginx 设置为反向代理到我的 Starman 服务器,并为 nginx 服务的静态目录设置别名。到目前为止,一切都很好。但是,我不知道我的应用程序 STDERR 应该登录到哪里。它没有到达 nginx(我认为这是有道理的),但我找不到太多关于 Starman 可能在哪里记录它的文档——如果在任何地方。我确实看过 Plack 的中间件模块,但只看到了访问日志的选项。

有人能帮我吗?

0 投票
1 回答
264 浏览

configuration - 在 Starman(或其他 PSGI 服务器)中配置目录别名

我习惯于在 Apache httpd.conf 中为不同的目录设置别名。例如,以下对我有用

然后我可以包含路径,例如<script src="/lib/jquery/plugin/funky.js"></script>无论应用程序路径是什么。

我正在尝试 Starman(以及其他 PSGI 服务器,例如 HTTP::Server::PSGI),但无法找到任何方法来设置配置参数,例如目录别名。

这可以做到吗?如何?

0 投票
1 回答
234 浏览

perl - 使用 Starman 在 PLACKUP 下动态加载包

我正在使用 starman 在 plackup 下运行一个 Web 应用程序,并尝试根据用户请求动态加载和实例化包。我正在使用“需要 $packageName;” 要加载包,其中 $packageName 包含包的名称,名称存储在配置文件中。然后我在实例上执行一组已知的命令,因为所有类都继承自基类并包含一组已知方法。

这在 Apache 下工作正常,但由于某种原因,plackup 说它无法找到包,即使 @INC 包含库路径并且包名称是库路径中最后一个目录的绝对名称。也就是说,包名是 Base::My::Package。

有人遇到过这个问题吗?我是否需要更新 Starman 中的其他路径?我正在使用 -I 标志执行 plackup 并更新我的环境 PERL5LIB 变量。我也在主应用程序类中尝试过'use lib /...',但这些都不起作用。

谢谢

0 投票
1 回答
340 浏览

perl - 在 Plack/Starman 下呼唤“忏悔”

我有一个运行 TryCatch 语句的 Plack/Starman 应用程序,该语句从 Carp 模块调用“confess”。但是我注意到坦白输出没有打印到 STDOUT。我尝试将 STDERR 输出路由到 STDOUT '2>&1',但仍然看不到任何东西。我没有运气搜索可能的错误日志文件。这种印刷在世界上的什么地方?我相信这可能是一个简单的答案。日志文件位于何处?如果这很重要,我正在一个 Ubuntu 机器上运行。

谢谢

0 投票
4 回答
7800 浏览

nginx - nginx/starman/dancer web 栈的解释

我从事网络编程已经有一段时间了,对 LAMP 堆栈非常熟悉。我决定尝试使用 nginx/starman/dancer 堆栈,但我对如何从高层次理解所有部分如何相互关联感到有些困惑。设置堆栈似乎不像设置 LAMP 堆栈那么简单,但这可能是因为我不太了解这些部分之间的关​​系。

我了解 nginx 所扮演的角色——一个轻量级的网络服务器/代理——但我对 starman 与 pgsi、plack 和 dancer 的关系感到困惑。

我希望对这些部分如何相互关联以及为什么每个部分都是必要的(或不必要的)进行堆栈设置进行高级分解。谢谢!

0 投票
1 回答
345 浏览

perl - 如何将 Starman 请求代理到 Apache?

我将starman 用于我的网络应用程序。Apache Web 服务器侦听端口 8080。我想在 Starman 中重写一些请求,例如'/request'对这个 Apache Web 服务器的请求。我试图找到一些下午,但我找到了一些帮助我的例子。

0 投票
4 回答
704 浏览

perl - Starman and MovableType 5.2

MovableType 5.2 has builtin PSGI support (via a mt.psgi in the main directory) and I've been trying to take advantage of it using starman/plackup.

Starman w/ MT fires up, but I get odd Not Founds and a silent hang & fail when I run mt-upgrade.cgi.

How I am running starman:

Mystery 1: My browser returns "Not Found" for index.html, but mt-static and mt.cgi is reachable.

Mystery 2: Due to the redirect I believe that MT code is running. But it is mostly silent in the starman log even though I have tried different MT debug options. Worse, the mt-upgrade.cgi seems to be reached then fails with this lone message to the starman log:

This non-buffering message seems informational and normal, and is coming from the MT codebase.

I have also run directly under starman and get the same result.

Any ideas or help would be appreciated!

System/Environment:

CPAN modules:

MT config:

0 投票
1 回答
309 浏览

perl - 当 Starman 收到 HUP 时 ZMQ 套接字阻塞

我有以下代码。我想$pub->close在starman服务器接收到HUP信号时调用该方法。

  • 我怎么知道子进程结束了?
  • 我可以使用 END {} 块吗?我试过这个,它似乎在 plackup 重新启动时工作(在编辑之后)。我用starman试过这个。我发送了 HUP 信号,但孩子们没有重新启动。
  • 我应该为 HUP 安装信号处理程序吗?这是如何运作的?

我想在孩子重新启动之前进行清理,如果我不这样做,子进程将阻塞。

这是我使用的 .psgi 文件。