标签: cgi

一旦数据在服务器上可用,就在网页上显示结果

我正在用Python编写一个cgi页面.假设客户端向我的cgi页面发送请求.我的cgi页面进行计算,一旦它有第一个输出,它就会将该输出发送回客户端,但它会继续进行计算并在发送第一个响应发送其他响应.

我在这里介绍的可能吗?我问这个问题是因为在我有限的知识中,在cgi页面中,响应是一次性发回的,一旦发送响应,cgi-page就会停止运行.这件事是在服务器端或客户端进行的,我该如何实现呢?

我的服务器正在运行Apache.非常感谢你.

我在这个论坛中尝试过"dbr"的客户端代码(感谢他,我知道了多长时间的轮询工作).

<html>
<head>
    <title>BargePoller</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript" charset="utf-8"></script>

    <style type="text/css" media="screen">
      body{ background:#000;color:#fff;font-size:.9em; }
      .msg{ background:#aaa;padding:.2em; border-bottom:1px #000 solid}
      .old{ background-color:#246499;}
      .new{ background-color:#3B9957;}
    .error{ background-color:#992E36;}
    </style>

    <script type="text/javascript" charset="utf-8">
    function addmsg(type, msg){
        /* Simple helper to add a div.
        type is the name of a CSS class (old/new/error).
        msg is the contents of the div */
        $("#messages").append(
            "<div class='msg "+ type +"'>"+ msg +"</div>"
        );
    }

    function waitForMsg(){
        /* This requests the url …
Run Code Online (Sandbox Code Playgroud)

python cgi

8
推荐指数
1
解决办法
8117
查看次数

如何使用HTML表单将数组传递给perl cgi脚本?

在HTML表单中,如果我们给输入框命名[],就像这样

<input name="foo[]" type="text" />
<input name="foo[]" type="text" />
Run Code Online (Sandbox Code Playgroud)

在PHP中,我们可以在数组中获取这些输入框的值$_POST['foo'].

如何在Perl中做类似的事情?我用CGI.pm

perl cgi

8
推荐指数
1
解决办法
1万
查看次数

在nginx下运行Lua(用Lua编写一个网站)

作为一个学习练习,我花了一些时间通过创建一些基本的应用程序来获取Lua.我已经在Natty/Ubuntu上安装并运行得很好,但是,我有点迷失了如何让它与nginx玩得很好.

我在这里阅读了一下http://wiki.nginx.org/HttpLuaModule#Installation 并将此repo https://github.com/chaoslawful/lua-nginx-module克隆到我的/ etc/nginx文件夹中......

然而,我仍然相当迷失,并且不确定如何在基本水平上使其工作.是否可以在我的nginx.conf文件中包含一些内容来处理/ lua请求,或者我是否需要重新编译/重新安装nginx?(我宁愿避免这种情况).

我已经通过fpm在nginx下使用php了很长一段时间,但我真的不知道从哪里开始让Lua以类似的方式工作.

lua cgi nginx

8
推荐指数
2
解决办法
9463
查看次数

Python CGIHTTPServer崩溃与"OSError:[Errno 13] Permission denied"

我从我的主目录运行以下命令:

python -m CGIHTTPServer
Run Code Online (Sandbox Code Playgroud)

这运行服务器,但是当我尝试访问cgi-bin目录中的脚本时,我得到:

Traceback (most recent call last):
  File "/usr/lib/python2.7/CGIHTTPServer.py", line 251, in run_cgi
    os.execve(scriptfile, args, env)
OSError: [Errno 13] Permission denied
Run Code Online (Sandbox Code Playgroud)

以root身份运行并没有什么不同.这些文件似乎具有所有正确的权限:

student@bandersnatch:~$ ls -lhR
.:
total 12K
drwxr-xr-x 2 student student 4.0K Jun 13 18:38 cgi-bin
drwxr--r-- 2 student student 4.0K Jun 10  2004 kalpy
-rwxrwxrwx 1 student student 2.0K Jun 13 12:37 test.html

./cgi-bin:
total 8.0K
-rwxr-xr-x 1 student student 31 Jun 13 18:38 test.py
Run Code Online (Sandbox Code Playgroud)

编辑:test.py的内容是:

#!/usr/bin/python
print "test"
Run Code Online (Sandbox Code Playgroud)

shebang有效:

~$ which python
/usr/bin/python
Run Code Online (Sandbox Code Playgroud)

python linux cgi

8
推荐指数
1
解决办法
6883
查看次数

使用Python上传文件

我有一个HTML表单,我使用Python根据输入生成一个日志文件.我还想让用户在他们选择时上传图片.我可以弄清楚如何使用Python操作它,但我不知道如何上传图像.这肯定在以前完成,但我很难找到任何例子.你们有人能指出我正确的方向吗?

基本上,我正在使用cgi.FieldStoragecsv.writer制作日志.我想从用户的计算机上获取一个图像,然后将其保存到我服务器上的目录中.然后我将重命名它并将标题附加到CSV文件.

我知道有很多选择.我只是不知道它们是什么.如果有人能指导我走向某些资源,我将非常感激.

python upload cgi image

8
推荐指数
1
解决办法
4万
查看次数

如何使用Rebol 3编写"Hello,World"CGI?

让我们从一些简单的东西开始:一个带有一个可以回显的字段的表单.

cgi rebol rebol3

8
推荐指数
1
解决办法
809
查看次数

将python脚本作为cgi apache服务器运行

我正在尝试使用Apache服务器将python脚本作为cgi运行.我的脚本看起来像这样:

  #!/usr/bin/python
  import cgi
  if __name__ == "__main__":

  print("Content-type: text/html")
  print("<HTML>")
  print("<HEAD>")
Run Code Online (Sandbox Code Playgroud)

我在httpd.conf中完成了必要的配置(在我看来):

  <Directory "/opt/lampp/htdocs/xampp/python">
  Options +ExecCGI
  AddHandler cgi-script .cgi .py
  Order allow,deny
  Allow from all
  </Directory>
Run Code Online (Sandbox Code Playgroud)

我用chmod设置了脚本的执行权限

但是,当我尝试通过localhost访问脚本时,我得到一个错误500:在标题之前输出脚本结束:script.py可能是什么问题?该脚本是在类似Unix的环境中创建的,所以我认为clrf vs lf的问题不成立.非常感谢.

python apache cgi

8
推荐指数
1
解决办法
3万
查看次数

如何让python脚本监听来自另一个脚本的输入

我有一种情况,我需要一个python脚本在连续循环中运行,我需要从另一个脚本传递参数,该脚本将在动作发生时运行.

第二个脚本将由一个使用cgi的网站触发,我的工作正常.连续循环应该接受cgi脚本读出的参数(然后通过串口发送信息).

对于特定问题,我不能让cgi脚本直接通过串口发送数据,因为每次运行时都会重置串口.

我似乎无法找到有关此类设置的任何信息.是否有任何方法或库可供我们研究这种或更好的方法来接近它?

python cgi serial-port

8
推荐指数
1
解决办法
6326
查看次数

使用Perl以简单的方式比较两个数组

有没有简单的方法来比较Perl中的两个字符串数组?

@array1  = (value1, value2, value3...);
@array2  = (value1, value3, value4...);
Run Code Online (Sandbox Code Playgroud)

我需要比较如下"N"值的数值,

value1 eq value1 
value2 eq value3
value3 eq value4
Run Code Online (Sandbox Code Playgroud)

请建议我有什么模块可以做到这一点?

谢谢

perl cgi

8
推荐指数
1
解决办法
1200
查看次数

php-cgi在PhpStorm中找不到导致502坏网关

我正在尝试使用PhpStorm(v2017.3)运行一个简单的php文件.它应该输出一个var_dump,但在运行脚本时我的浏览器中经常遇到502错误的网关错误.我在PhpStorm中收到以下错误:

找不到php-cgi:请确保已配置的PHP解释器构建为CGI程序(指定了--enable-fastcgi)

当我php -v在我的终端中运行时,输出是:

PHP 7.1.7 (cli) (built: Jul 15 2017 18:08:09) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止尝试过的事情:

php macos cgi phpstorm

8
推荐指数
3
解决办法
8057
查看次数

标签 统计

cgi ×10

python ×5

perl ×2

apache ×1

image ×1

linux ×1

lua ×1

macos ×1

nginx ×1

php ×1

phpstorm ×1

rebol ×1

rebol3 ×1

serial-port ×1

upload ×1