问题标签 [cgi-bin]
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.
php - 如何从 Perl 或 PHP 调用 c++ 二进制文件(在 Linux 上使用 Apache 的 CGI-BIN)?
我有一个用 c++ 编写的网站 cgi-bin 程序。
不幸的是,我朋友网站的网站提供商只允许 Perl 或 PHP cgi-bin 脚本。
有没有一种简单的方法来简单地拥有一个非常小的 Perl 或 PHP 包装器,它只调用 c++ 编译的二进制文件?
c++ 程序是否仍然能够从标准输入读取 POST 命令,还是必须由 Perl 或 PHP 读取然后转发。
javascript - 带有隐藏标签的表格到网络购物车 - 在同一页面上显示它?
我想要做的基本上是这样的:在一个页面上,我的客户可以单击查看购物车链接,他们的购物车内容显示在同一页面下方。这是我的基本链接形式:
我不知道如何将 JavaScript 包装在它周围以使其工作。任何帮助是极大的赞赏!
html - 基于 CGI-BIN 的 Web 开发的主要缺点是什么?
我很幸运没有进行任何基于 cgi-bin .cgi 的 Web 开发。但一般来说,那些拥有的人似乎并没有“怀念”那些日子。
我最近加入的一个项目在处理需要与具有基于 CGI-BIN 的 API 的遗留系统通信的页面时存在性能问题。该系统是 COGNOS 7。
迄今为止我收到的反馈是“COGNOS 很慢”,但其他人报告说 COGNOS 取得了巨大的成功,我认为这更多地与通过 CGI-BIN 的访问有关,而不是与 COGNOS 本身的性能有关。
所有这一切都说明了导致基于 CGI-BIN 的 Web 开发性能不佳、困难等的主要问题是什么……
web-applications - 如何从我的 URL 中删除“cgi-bin”?
我正在嵌入式设备上创建一个小型应用程序,该设备上运行有boa Web 服务器。我正在创建一个混合了普通 HTML 页面和 Perl 脚本的 Web 应用程序,以与主应用程序交互。有没有办法隐藏某些页面是从设备上的 cgi-bin 提供的事实?
我现在拥有的是以下 URL。
- http://localhost/home.html
- http://localhost/cgi-bin/config.pl
- http://localhost/cgi-bin/control.pl
- http://localhost/info.html
我非常喜欢的是:
上面的 URL 将我带到相应的 index.html 或 index.pl 文档。是否存在文件结构和服务器设置的某种组合可以启用此行为?
我已经在 Google 上搜索过这个,但正如您所想象的那样,我正在获取 URL 中带有“cgi-bin”的搜索结果页面。我希望这里有人以前做过。
编辑:我应该提到我知道如何通过在我的 web 根目录中创建单独的文件夹来为纯 HTML 页面执行此操作,所有这些文件夹都包含 index.html 页面。我的问题是让这种类型的解决方案可以处理 cgi-bin 目录中的 .pl 或 .cgi 文件。
perl - 我可以自动发现 shell 或 Perl 脚本的参数来为它们“元”编程 WEB UI 吗?
是否可以自动发现 shell/Perl 脚本的参数以便为它们“元”编程 WEB UI?
我有一堆“遗留”脚本,我想“web wrap”。到目前为止,我已经创建了一个 CGI-BIN Web 应用程序,其中包含大约 3 个可以调用 bash/Perl 报告脚本的参数。
但现在我想到也许有更快或自动的方法来包装这 100 多个脚本。
所以基本上我想了解元编程技术,在那里我会发现特定的 bash 或 Perl 脚本采用哪些输入参数,然后生成相应的 HTML FORM 元素,这些输入参数作为 TEXT INPUT 或 SELECT 下拉框等。
任何想法或示例链接?
web-services - 需要具有某些特定条件的 http 服务器
我一直在为我的项目寻找网络服务器,但我无法满足自己。我需要一个支持 Windows 编译 CGI 脚本 (exe) 的 http 服务器,并且必须能够使用相对路径。如果服务器可以尽可能小/轻量级,那将是一个额外的好处。
到目前为止,我的搜索中最难的部分是找到一个支持 CGI 和相对路径支持的服务器。当我说相对路径时,我指的是服务器根目录。我希望能够将它与我的项目一起打包,因此 conf 文件中的路径不能是绝对的。
我唯一满足所有标准的是Abyss Web,但他们的许可证是专有的,仅供个人免费使用。
编辑:我在我的方式中发现了错误。我在根目录下通过 cmd 启动了这个过程。因此,apache 在 conf 中使用的相对路径是相对于我在根目录下的位置。通过更改到根目录并在那里运行进程,一切都像 gbjbaanb 提到的那样工作。但我想我的问题的上下文可能仍然有效。如果我要在我的程序(C# .NET)中将服务器作为进程运行,那么“当前目录”会是什么?我是否必须确保在启动之前更改了当前目录环境变量?
apache2 - 带有 apache2 的 mod_python,(重新)导入模块错误
我试图让 mod-python 与 apache2 一起工作,但没有任何成功。我已经遵循了一些让 mod-python 工作的教程,但我看不出我做错了什么。
当我访问http://site.example.com/cgi-bin/test.py时,我实际上得到了我的 404 页面!(而如果文件确实不存在,我会收到 403 禁止)
这是我的设置:
在 /etc/apache2/sites-enabled/ 中有以我的每个域命名的配置文件。在site.example.com 文件中,我已将其添加到用户指令部分:
此处的完整文件,其中包括以下行:
编辑以添加 test.py 的内容:
如上所示,我得到一个404 /python/test.py was not found on this server
.
但是,如果我取消注释最后一行,我会得到:
这个回溯看起来对吗?顺便说一句,启用 cgitb 没有任何效果。
我可以添加任何其他信息来帮助诊断吗?
php - CGI-PHP error and Redirection Issue Wordpress MU
I installed wordpress Mu at http://www.optimalthinking.com/community/wp-admin/install.php
But when I visit http://www.optimalthinking.com/community/
I get
Security Alert! The PHP CGI cannot be accessed directly.
This PHP CGI binary was compiled with force-cgi-redirect enabled. This means that a page will only be served up if the REDIRECT_STATUS CGI variable is set, e.g. via an Apache Action directive.
For more information as to why this behaviour exists, see the manual page for CGI security.
For more information about changing this behaviour or re-enabling this webserver, consult the installation file that came with this distribution, or visit the manual page.
Can anyone tell me what's the problem and how it can be fixed.
Things I have tried so far:
- Reinstalled the WPMU
- http://mu.wordpress.org/forums/topic/5529
- http://trac.mu.wordpress.org/ticket/502
- Tried changing .htaccess
All these things didnt yield any results. If stackoverflow allows me, I would reward anybody who would fix this.
Thanks
cgi - CGI 脚本不执行每个页面访问
我有一个 CGI 脚本,它在服务器上生成一个文件,然后将浏览器重定向到那个新生成的文件。
文件 /myspecialdir/foo 包含一些我想在 /httpd/foo.html 中的动态内容。然后我希望脚本在生成新文件后重定向到那里。
我遇到的问题是脚本不会从浏览器的每次点击中获取新数据。例如,如果我第一次在 IE 中访问http://myip/cgi-bin/genfoo.cgi ,则会生成数据并将其重定向到 foo.html。之后,如果我使用后退按钮转到 CGI 页面,它不会重新运行,并且我会被重定向到陈旧的数据。
如何强制 CGI 脚本甚至从后退按钮执行?
编辑:我尝试使用 HTTP 标头方法执行此操作,但这似乎不起作用。这是新脚本,我错过了什么吗?
当我通过 IE 访问时,所有这些都是打印页面中的标题,如下所示:
Pragma-directive:无缓存
缓存指令:无缓存
缓存控制:无缓存
Pragma:无缓存
过期:0
位置:/BACtrace.txt
内容类型:文本/html
编辑:
事实证明这是我使用的 HTTP 服务器(busybox v1.12.1)的问题。我无法按照最初的建议发送 HTTP 标头,但我能够通过 META 标记和 IE8 中的设置(工具--> Internet 选项--> 浏览历史记录--> 设置按钮- -> 勾选“每次访问网站”)。
我使用的 META 标签是:
apache - Apache 用隐式重定向重写
一段时间以来,我一直在尝试这样做,但没有成功。我会提前说这可能是一个新手问题,所以很抱歉,但我确实需要一些帮助。
我正在尝试将对 cgi-bin/java-rmi.cgi 的请求重定向到 tomcat 上的 servlet(来自 apache)。我已经成功地重定向到 servlet,但我无法进行隐式重定向(隐藏客户端的 url 更改)。
这是强制性的,因为如果它被重定向,rmi 将无法工作,所以我必须对客户端隐藏它。
现在我的 httpd.conf 看起来像这样(显然只有相关的东西)
另外,我的 mod_jk.conf 看起来像这样(同样,只有相关的东西)
(虽然我认为 mod_jk.conf 与问题无关)
我还启用了这些:
dules/mod_rewrite.so
每当我尝试打开http://localhost/cgi-bin/java-rmi.cgi时,页面打开时的 url http://localhost/RMIServlet并不好。
我究竟做错了什么?
谢谢!