Articles of cgi

Apache CGI脚本不能覆盖它具有完全权限的目录中的文件

在Solaris 10上有一个奇怪的问题。 我有一个cgi脚本(Perl)需要覆盖文件。 我们没有在Apache上运行suexec,所以目标目录有完整的(777)访问权限,以便Apache可以写入。 问题是CGI脚本能够将新文件写入目录,但不能覆盖现有文件。 **Directory permissions for file destination:** drwxrwxrwx 146 myuser white 32768 Jun 2 20:46 dest-dir **File Permissions of file that needs to be over written:** -rw-r–r– 1 myuser white 0 Jun 2 20:50 cgitestfile 任何人都知道解决这个简单的解决scheme? 看起来像apache只能覆盖一个文件,如果它拥有它。

CGI的权限与NGINX和FastCGI

我在运行GitLab的服务器上运行GitWeb(本质上是一个CGI脚本)。 我的目标是在不注册人员的情况下提供对GitLab存储库的只读访问权限。 我已经把GitWeb指向了有权限drwxrws—拥有者:group git:git存储库文件夹。 FastCGI包装与用户运行:组www-data:www:data ,所以我添加了www-data组www-data 。 我也通过改变这个用户来validationwww-data到版本库的访问。 但是,当我运行GitWeb时,CGI脚本无法访问存储库,无法获取我的存储库列表。 一切工作正常,如果我将rx权限添加到其他部分(最后三重),但我不想混乱的文件夹的权限,因为显而易见的原因。 顺便说一句,我运行Debian稳定,并没有安装SE-Linux或类似的东西。 任何帮助将不胜感激。

使用uhttpd为GET / generate_204返回HTTP状态204?

为了处理我的特定设置的Android强制门户检测,每当我得到/generate_204的GET请求时,我需要返回一个HTTP状态码204。 我目前使用uhttpd作为我的networking服务器,所以我想知道这是否可以做这台服务器。 我目前的理解:我需要自己写一个CGI(或PHP或Lua)脚本,返回类似 Status: 204 No Result 我的问题是我如何configurationuhttpd将请求转发到/generate_204到CGI或PHP或Lua,因为没有前缀和文件扩展名,我可以为此匹配。

如何从Web浏览器运行Linux bash脚本?

您好我也有Web服务器。 我用vi编辑器做了一个简单的bash脚本,它会打开文件,然后添加一些行到最后它会自动保存…之后,2-3 linux命令将作为一个特定的用户运行。 现在我想从网页浏览器做同样的事情,所以我需要为此做些什么? html?perl?python?cgi?….?这是简单的方法吗?

在现代硬件上的常规networkingCGI可扩展性?

我参与了一个项目,以升级10年基本不变的时间跟踪系统。 它运行在HP Proliant Pentium上的Linux / Apache / CGI / MySQL3,结合了一些perl和bash“here文件”(带有一个C库来parsing/清理传入的请求)按请求方式。 公司从2001年的约10人增长到现在的750多人,计划在未来几年内增长到几千人。 应用程序有一些性能问题,但经过调查后,出现了性能问题,处理了数百万次的条目,明显缺less索引和结果,导致大页面无法分页。 在Apache和请求进程的利用只是不占用太多的CPU时间和内存; 笛卡儿join百万张唱片的桌子却消耗了大量的金钱,据说甚至在本月底的时候都会定期locking。 我想解决这些方法的问题: 添加索引并调整一些模式。 升级硬件。 升级到更新的MySQL 更新UI是一个less一点的老派。 我只是没有看到任何理由把完整的CGI程序重新写入进程内架构。 我认为CGI会挺好的 。 考虑到过去十年来我们在硬件方面所取得的进展,您是否真的对于单独处理CGI架构有任何顾虑? 事情就是,我们可以在一台新的服务器上花费几千美元,或者重新编写多个10G的美元。

如何防止Apache2试图将脚本执行为脚本?

所以基本上,我遵循这个指南关于iptraf监测和rrdtool的信。 我把它放在/usr/lib/cgi-bin/像往常一样的CGI脚本。 然后,当我从浏览器访问它的时候,它的图像似乎被破坏了。 为了进行debugging,我将权限临时设置为777。 我认为Apache2正在尝试执行png文件作为脚本。 我如何防止? 以下是我的configuration文件。 提前致谢! 哦。 我以root身份运行。 #tail /var/log/apache2/error.log [Sun Mar 01 06:13:05 2015] [error] [client 192.168.0.241] Premature end of script headers: tcp_services-25-6hr.png, referer: http://192.168.0.1/cgi-bin/tcp.cgi [Sun Mar 01 06:13:05 2015] [error] [client 192.168.0.241] Premature end of script headers: tcp_services-80-6hr.png, referer: http://192.168.0.1/cgi-bin/tcp.cgi [Sun Mar 01 06:13:05 2015] [error] [client 192.168.0.241] Premature end of […]

有没有另一种方法来安全地运行Apache2而不使用CGI模式的最终用户?

有没有另一种方法来安全地运行Apache2多个terminal用户(如托pipe数百个博客),而不使用CGI模式所需的suPHP? 对PHP使用CGI模式似乎效率低下,如果我们可以正确设置权限,我们可以通过mod_php来托pipePHP? 我的意思是,我想限制这些用户到他们的网站的主目录,但不希望有任何安全问题。

RewriteRule 对Apache / mod_php没有影响

我试图阻止PHPparsingPOST请求。 当它看到相应的MIMEtypes时会自动执行。 为此,我正在考虑遵循RewriteRule hack: RewriteCond %{HTTP:Content-Type} ^(multipart/form-data\s*;.*)$ RewriteRule mime.php – [E=CONTENT_TYPE:no/parsing;old=%1] 但CGI环境仍然包含原始的[CONTENT_TYPE] => multipart/form.. 我可以设置例如ALT_CONTENT_TYPE troublefree,但这对我没有用处,因为PHP仍然在原始上运行。 同样,更改大小写[E=ContEnt_Type]不会删除旧的标题值,它只是真正改变了大小写。 CONTENT_TYPE env var是在后期构build的吗? 因为我也无法像%{CONTENT_TYPE}那样访问它。 但是再次看,文档http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritecond没有提到它。 有没有另一种方法来重写这个CGIvariables? 本地testing服务器: Server version: Apache/2.2.14 (Ubuntu) mod_php, not fastcgi Linux snig 2.6.32-29-generic #58-Ubuntu SMP, 2011 x86_64 GNU/Linux

如何以root身份执行(一些)CGI命令

我想在我的APACHE服务器中放一个简单的CGI脚本。 我想写在C可能(但也在PERL,如果我想)。 问题是它必须包含一些只能由root用户执行的行(例如iptables ),而webuser是运行服务器的用户。 我怎样才能让这些行可执行的根?

Perl CGI.pm模块在RedHat / CentOS 5上过时地过时了

我想从RPM(使用rpmforge.net)安装我所有的Perl模块,而不是从CPAN获取它们。 我的最终目标是让Bugzilla 3.4.4运行。 它需要CGI.pm 3.21或更高版本; RHEL5(5.8.8)上的perl软件包带有CGI.pm 3.15,而且看起来没有任何第三方软件包仓库单独打包(Red Hat的perl-CGI RPM: RH9,看来!) 有推荐的解决scheme吗?