【问题标题】:web-gui without web-server没有网络服务器的 web-gui
【发布时间】:2011-08-07 04:57:17
【问题描述】:

是否有人知道一个模块,它允许我为我的脚本编写一个 web-gui(比如 cups 和 samba 中的 web-administration-tools),而无需安装/配置/运行类似于 DBD::SQLite 的 web-server我可以在不需要数据库服务器的情况下使用数据库。

【问题讨论】:

    标签: perl user-interface module administration


    【解决方案1】:

    安装模块 Plack 然后运行你的网络服务器

    plackup --listen localhost:80 --loader Shotgun -MPlack::App::WrapCGI -e " Plack::App::WrapCGI->new( script => q{test.cgi} ) "
    
    HTTP::Server::PSGI: Accepting connections at http://localhost:80/
    

    test.cgi 以标准方式编写(与 apache cgi-bin 相同) Shotgun 意味着每次编辑 test.cgi 时都会重新加载 test.cgi

    【讨论】:

      【解决方案2】:

      使用一些微网络框架,例如 DancerMojolicious

      Dancer 示例(包括简单的网络服务器):

      #!/usr/bin/perl
      
      use Dancer;
      
      get '/hello/:name' => sub {
              return "Why, hello there " . params->{name};
      };
      
      dance;
      

      【讨论】:

        【解决方案3】:

        编写一个 Plack 应用程序。将其与支持的独立服务器之一捆绑在一起,例如HTTP::Server::Simple。

        【讨论】:

          【解决方案4】:

          您需要将网络服务器(或至少理解基本 HTTP 的东西)嵌入向您的应用程序添加代码,以侦听 TCP 端口并为基本 HTTP 请求提供服务。

          一个快速的谷歌发现这篇文章/教程应该让你开始:

          http://www.perl.com/pub/2002/09/17/ewispp.html

          (为避免混淆“嵌入网络服务器”而进行编辑)

          【讨论】:

          • 但是您必须运行它才能使其正常工作,他提到了without installing/configuring/running a web-server 或者我错过了什么,他的意思是他想制作自己的不依赖于的网络服务器apache 或 IIS 或任何其他。
          • facepalm - 如果您想为 web(即通过 HTTP)提供内容,那么您需要.. . 等待它... 一个网络服务器。整个“无需安装/配置”部分是 OP 要求嵌入式 Web 服务器。
          • 运行什么?您只需将代码添加到您的 perl 脚本以侦听 TCP 端口并服务 HTTP 请求 - 也许“嵌入网络服务器”有点强大,但这基本上就是您正在做的事情。但是,是的 - 他想在他的脚本中添加一个 Web GUI,而不必设置一个完整的网络服务器。请参阅我发布的链接:)
          • 我明白你的意思和你的回答,我只是对 OP 问题感到困惑。我的意思是,对于您发布的内容,您必须启动 perl,以便它绑定到端口并开始工作,如果这是 OP 的意思,您仍然需要运行它,另一方面,如果他的意思是只是关于 apache、IIS 和诸如此类的东西,这将非常适合。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-10-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多