Articles of cgi

在Apache权限问题下使用Perl运行CGI

我在Debian框中的apache2.conf下有以下条目。 AddHandler cgi-script .cgi .pl Options +ExecCGI ScriptAlias /cgi-bin/ /var/www/mychosendir/cgi-bin/ <Directory /var/www/mychosendir/cgi-bin> Options +ExecCGI -Indexes allow from all </Directory> 然后我有一个perl cgi脚本存储在这些目录和权限下: nvs@somename:/var/www/mychosendir$ ls -lhR .: total 12K drwxr-xr-x 2 nvs nvs 4.0K 2010-04-21 13:42 cgi-bin ./cgi-bin: total 4.0K -rwxr-xr-x 1 nvs nvs 90 2010-04-21 13:40 test.cgi 但是,当我试图在Web浏览器中访问它时: http://myhost.com/mychosendir/cgi-bin/test.cgi 他们给了我这个错误: [Wed Apr 21 15:26:09 2010] [error] […]

读取文件时,Windows / Apache / Perl / CGI“访问被拒绝”

自从我开始进行严重的系统pipe理和开发工作(所有* nix)以来,我一直没有在Windows机器上做过任何事情。 所以我可能会问一些简单的问题 – 但我还没有通过searchfind答案。 我有Windows Server 2008运行Apache 2.2。 我可以运行在cgi-bin目录中的“printenv.pl”perl脚本以及Apache安装就好了… 但是,使用脚本执行以下操作: #!c:\perl\bin\perl.exe print "Content-Type: text/plain; charset=iso-8859-1\n\n"; print `type C:\\Some\\Dir\\file.txt`; 我的Apache日志只是说: [Tue Jun 22 13:13:55 2010] [error] [client 68.230.22.34] Access is denied.\r 我可以从DOS提示符运行相同的perl脚本 – 所以我知道它适用于我的用户。 我可以在任务pipe理器中看到httpd.exe正在用户系统中运行,所以我确信file.txt对SYSTEM可读。 我甚至在任何时候都让所有人都可读 – 但是我仍然得到了“访问被拒绝”的错误。 谢谢…

在OSX上设置CGIHTTPServer

我对此一无所知,请耐心等待。 我试图在OSX上设置python的CGIHTTPServer,以便能够在本地提供cgi-scripts,但我似乎无法做到这一点。 我有一个简单的testing脚本: #!/usr/bin/env python import cgi cgi.test() (具有权限-rwxr-xr-x@ ,位于~/WWW (权限为drwxr-xr-x),从shell运行得很好,我有这个脚本来使用CGIHTTPServer: import CGIHTTPServer import BaseHTTPServer class Handler(CGIHTTPServer.CGIHTTPRequestHandler): cgi_directories = ["~/WWW"] PORT = 8000 httpd = BaseHTTPServer.HTTPServer(("", PORT), Handler) print "serving at port", PORT 但是当我运行它,去localhost:8000只服务于脚本的内容,而不是结果(即它返回的代码,而不是输出)。 我究竟做错了什么?

c(cgi)程序来处理html表单

有C或Python程序处理HTML表单可以吗? 虽然我工作的PHP和Java的东西。这种方法(使用C / Python)的缺点或优势是什么?

Perl模块XML :: Expat不会在IIS 7和Windows 2008下dynamic加载

我们正在将我们的旧的Perl / CGI应用程序内部移动到一个新的系统,并遇到了一个麻烦。 当我运行: perl -MXML::Parser -e 1 从命令行来看,一切都很好。 但是,当我use XML::Parser从CGI脚本运行它时,所有地狱破坏: 无法为模块XML :: Parser :: Expat:load_file加载“C:/strawberry/perl/site/lib/auto/XML/Parser/Expat/Expat.dll”:指定的模块无法在C: /strawberry/perl/lib/DynaLoader.pm line 200,line 55. at C:/strawberry/perl/site/lib/XML/Parser.pm line 18编译在C:/ strawberry / perl / site / lib下的require失败/XML/Parser.pm第18行,第55行。BEGIN失败 – 编译在C:/strawberry/perl/site/lib/XML/Parser.pm第22行,第55行中止。编译在(eval 43)第1行,第55行。BEGIN失败 – 编译在(第43行)第1行第55行中止。 添加到perl安装的其他模块正常工作(MD5,WIn32 :: ODBC等),但是这个外部的一个咆哮。 服务器是IIS 7(这个应用程序是我们新来的),x64 Win2008(也是我们新来的)。 编辑: 经过一段时间后,这不是唯一的模块无法加载。 XML :: Simple也是如此。 几乎相同的错误。 Perl声称的DLL不存在,存在就好了。 而且事情也是从命令行工作的。 build议?

CGI文件只在本地机器上执行,不在线上

我有一个用python编写的CGI脚本(以#!/ usr / bin / env python开头),在服务器上执行得很好。 我input/home/company/server/root/adam/code.cgi并输出正确的输出。 我去www.myserver.com/adam/code.cgi,我看到的是我的cgi脚本以纯文本输出的源代码。 有一些权限问题,但我还是Linux的新手。 我在/ home / company / server / root和所有子文件夹上执行了chmod a + rx *,但是我无法使/ home,/ home / company或/ home / company / server全局可读/可执行,因为我是实习生并没有足够高的权限,我不确定IT人员想让他们公开可见。 我该怎么办? 我需要从浏览器访问CGI脚本。 同一目录中的其他网页可以从浏览器中查看,并以完美呈现的HTML出现。

404找不到存在的PL脚本!

我做了一个CGI脚本的GET请求,我得到一个404错误。 但是,我100%确定脚本是存在的,它有权限: -rwxr-xr-x 1 apache apache 6520 Sep 7 03:01 uu_ini_status_audios.pl 请求url是: http://mysite.com/cgi-bin/uu_ini_status_audios.pl?tmp_sid=893facacc5dc392ad0f4c91e6a9e8d40&rnd_id=0.12266222834382812 我得到的错误: The requested URL /cgi-bin/uu_ini_status_audios.pl was not found on this server. 这个用来为我工作之前,但我认为它停止工作后,我重新启动Apache所以也许这意味着它的一个configuration,我改变了? 我检查了Apache和PHP的错误日志,没有发现有用的帮助我解决我的问题! 我很感激这方面的帮助!

用PHP预防Apache中的CGI超时

我有一个用户在浏览器中运行的PHP进程,但是往往会花费相当长的时间 – 5分钟以上。 我们只是切换到一个新的服务器,当我们尝试运行脚本时,它始终在4分钟时间内完全超时,发送到500内部服务器错误页面,并在错误日志中输出以下错误: 超时等待CGI脚本的输出 脚本标题过早结束:cgi_wrapper 有趣的是,PHP过程似乎在后台完成。 如果我们从“500错误”页面导航并等待一下,脚本中所需的更改就会生效。 有没有什么办法来解决这个CGI的限制呢? 我已经阅读了FastCGI,但不知道如何在我们的服务器上安装(Apache,centOS,PHP 5.3)。

无法configurationtrac以使用Apache2

我一直在尝试设置trac,以便在apache上部署一段时间,而我正在跑进一堵墙。 这是我从我的服务器收到的响应 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, webmaster@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available […]

共享主机上的Git服务器

是否有任何修改控制系统(git首选)可以在共享主机服务器上运行,推测是作为CGI脚本启动的?