在我的托管帐户上使用cpanel,我创建了一个子域名 - 例如www.clothing.mysite.com
在clothes.mysite.com的目录中自动创建了一个cgi-bin文件夹.我需要它吗?我只使用子域名来安装wordpress.我真的不明白cgi-bin文件夹的用途,如果不伤害任何内容,我很乐意留下它.有什么想法吗?多谢你们!
我刚开始学习Python,现在我很丢失.我想在通过hosting24.com托管的服务器上运行我的脚本.他们的常见问题解答说他们支持Python,但我不知道在哪里放置我的脚本来运行它.
在我的根目录中有一个名为cgi-bin的文件夹,我猜这是我放置脚本的地方?有人可以向我解释这是如何工作的吗?
OS模块的文档似乎没有关于如何在没有完整路径的情况下打开不在子目录中的文件或脚本运行的当前目录的信息.我的目录结构如下所示.
/home/matt/project/dir1/cgi-bin/script.py
/home/matt/project/fileIwantToOpen.txt
open("../../fileIwantToOpen.txt","r")
Run Code Online (Sandbox Code Playgroud)
给出文件未找到错误.但是如果我在cgi-bin目录中启动一个python解释器并试一试open("../../fileIwantToOpen.txt","r")它.出于明显的可移植性原因,我不想在完整路径中进行硬编码.有一组的OS模块的方法是CAN做到这一点?
我正在尝试使用用C编写的程序从html表单中检索POST数据.
目前我正在使用:
char *formdata = getenv("QUERY_STRING");
if(formdata == NULL) /* no data retrieved */
Run Code Online (Sandbox Code Playgroud)
这似乎与表单"GET"方法一起正常工作,但不适用于"POST"方法.如何检索POST数据?
我正在嵌入式设备上创建一个小应用程序,它上面运行着一个boa Web服务器.我正在创建一个混合使用纯HTML页面和Perl脚本的Web应用程序来与主应用程序进行交互.有没有办法隐藏一些页面是从设备上的cgi-bin提供的?
我现在拥有以下网址.
我更喜欢的是:
使用上面的URL将我带到相应的index.html或index.pl文档.文件结构和服务器设置的某种组合是否会启用此行为?
我在谷歌搜索过这个,但是你可以想象我在URL中用"cgi-bin"获取搜索结果的页面和页面.我希望以前有人这样做过.
编辑:我应该提一下,我知道如何通过在我的Web根目录中创建单独的文件夹来为纯HTML页面执行此操作,所有文件夹都使用index.html页面.我的问题是让这种类型的解决方案与cgi-bin目录中的.pl或.cgi文件一起使用.
我已经读过你的网络服务器出了问题,这可能导致在网络浏览器中将PHP脚本显示为纯文本文件; 因此,我将大多数PHP脚本移动到Web根目录之外的目录中.现在我一直想知道我的cgi-bin中的CGI脚本是否会发生同样的情况.
我主要关心的是一个包含MySQL数据库用户名和密码的脚本.如果这是一个可能的安全漏洞(至少就数据库内容而言),是否有办法将敏感数据放在不同的位置并从那里获取(如将其保存在不同目录的文件中并阅读它来自那个文件,例如)?我的脚本是用Perl btw编写的.
我有幸不做任何基于cgi-bin .cgi的web开发.但通常那些似乎没有"错过"那些日子的人.
我最近加入的项目在处理需要与具有基于CGI-BIN的API的遗留系统进行通信的页面时存在性能问题.该系统是COGNOS 7.
我收到的反馈是"COGNOS很慢",但其他人报告COGNOS取得了巨大成功,我认为它更多地与通过CGI-BIN的访问有关,而不是COGNOS本身的性能.
所有这些都说明了基于CGI-BIN的Web开发不具备性能,难度等等的主要问题......
我在使用Lighttpd和cgi-bin执行python脚本时遇到问题.我在stackoverflow(即Lighttpd和cgi python)和其他网站中发现了类似的问题,但没有一个完全属于我的配置.我可以通过发出"python flash.py"来执行独立的python脚本而不会有任何问题.
可能有助于解决这个问题的关键点是,在运行"apt-get update"和"apt-get upgrade"之前,一切正常.我已经通过搞乱某些文件的权限,以及搞乱配置文件进行了实验,但没有一个帮助.
我已经将所有内容都恢复到运行更新后的状态.这对我来说是一个新的领域,我只是没有足够的教育来找到任何明显的东西.就目前而言,这是我目前的配置.
/etc/lighttpd/lighttpd.conf
server.modules = (
"mod_access",
"mod_alias",
"mod_compress",
"mod_redirect",
# "mod_auth",
# "mod_rewrite",
)
server.document-root = "/var/www"
server.upload-dirs = ( "/var/cache/lighttpd/uploads" )
server.errorlog = "/var/log/lighttpd/error.log"
server.pid-file = "/var/run/lighttpd.pid"
server.username = "www-data"
server.groupname = "www-data"
server.port = 80
index-file.names = ( "index.php", "index.html", "index.lighttpd.html" )
url.access-deny = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
compress.cache-dir = "/var/cache/lighttpd/compress/"
compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" )
# default listening port …Run Code Online (Sandbox Code Playgroud) 我已经设置了一个php文件来运行,只有echos你好.
<?php
echo hello;
?>
Run Code Online (Sandbox Code Playgroud)
我的cron工作看起来像这样:
/usr/local/bin/php -f “/home/username/public_html/mls/test.php”
Run Code Online (Sandbox Code Playgroud)
当我的脚本运行时,我收到一封确认电子邮件说:
Could not open input file: /home/username/public_html/mls/test.php
Run Code Online (Sandbox Code Playgroud)
我不知道造成这种情况的原因.我正在使用godaddy的虚拟专用服务器,安装了cpanel x.我已经使用ssh在文件夹和文件上设置权限777,仍然无法让它运行.
任何意见将是有益的.谢谢.
我用 C++ 构建了一个 .CGI。此二进制文件依赖于boost特定文件夹中的某些共享库和其他资源/usr/local/boost/。CGI 不执行,在日志中我可以看到错误
error while loading shared libraries: libdxxx: cannot
open shared object file: No such file or dire
Run Code Online (Sandbox Code Playgroud)
现在,我读了很多日志,说我必须在httpd.conf下面进行设置,但仍然不起作用。
SetEnv LD_LIBRARY_PATH /usr/local/boost:
Run Code Online (Sandbox Code Playgroud)
在我的配置中,我在配置文件的末尾“按原样”设置了这一行,而没有包含在任何VirtualHOst or Directory部分中。我试图插入到 cgi-bin 的目录中,但还是一样
<Directory "/var/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
SetEnv LD_LIBRARY_PATH /usr/local/boost
</Directory>
Run Code Online (Sandbox Code Playgroud)
我也试过(见下面的讨论)为 ldconfig 添加一个 .conf 文件,但它仍然不起作用!
#added a file called myconfig.conf conrtaining a line
/usr/local/boost
/etc/ld.conf.d/
ldconfig (as root)
Run Code Online (Sandbox Code Playgroud)
我还阅读了httpd继承运行它的 ROOT 用户的环境变量;当我 root 时,我调用以下命令来启动 Apache 并且 …