【问题标题】:Why does my CGI script keep redirecting links to localhost?为什么我的 CGI 脚本不断将链接重定向到 localhost?
【发布时间】:2010-12-26 01:44:07
【问题描述】:

访问此页面http://online-file-sharing.net/tos.html 并单击底部页脚链接之一。它会将您重定向到地址栏中的本地主机。我不知道为什么会这样。

这是我整个网站的主要脚本:

上传.cgi

$ENV{PATH} = '/bin:/usr/bin'; 
delete @ENV{'IFS', 'CDPATH', 'ENV', 'BASH_ENV'};
($ENV{DOCUMENT_ROOT}) = ($ENV{DOCUMENT_ROOT} =~ /(.*)/);
# untaint. #$ENV{SCRIPT_NAME} = '/cgi-bin/upload.cgi';
use lib './perlmodules';
#use Time::HiRes 'gettimeofday';
#my $hires_start = gettimeofday();
my (%PREF,%TEXT) = (); 

当有人访问根目录时不显示文件,尽管我有一个 .htaccess 文件说要打开位于我的根目录中的 upload.cgi 文件。

当我将浏览器直接指向 CGI 文件时,它可以工作,但它再次将我带到我的本地主机。

我将这个网站托管在我自己的服务器上,也就是这台计算机上,如果这些信息有帮助,我会使用 XAMPP。我也使用 DynDNS 作为我的域名服务器。

希望你能给我一些见解。

【问题讨论】:

标签: perl xampp localhost


【解决方案1】:

好吧,只要查看 HTML 的源代码就会发现 localhost 实际上是链接的一部分。使您的链接相对。例如,如果我给你这个 URL:

http://localhost/foobar

总是会带你到本地主机。如果你的情况,你想要的是/foobar,表明它应该从当前主机的根目录开始,并添加添加foobar路径。

【讨论】:

    【解决方案2】:

    您使用什么来生成 HTML?很明显,您不是手动编写的,或者您已经有了问题的答案,但听起来您导致超链接计算不正确。您想要的是一个以 / 开头的链接,这意味着您已经在其中的任何域的根目录,或者相对于当前目录的路径。

    【讨论】:

      猜你喜欢
      • 2015-12-19
      • 1970-01-01
      • 2011-01-31
      • 1970-01-01
      • 2012-06-20
      • 2010-11-16
      • 2023-02-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多