Perl 为什么我的CGI脚本不断将链接重定向到本地主机?

Perl 为什么我的CGI脚本不断将链接重定向到本地主机?,perl,xampp,localhost,Perl,Xampp,Localhost,访问此页面并单击底部页脚链接之一。它会将您重定向到地址栏中的本地主机。我不知道它为什么会这样 这是我整个网站围绕的主要脚本: upload.cgi 当有人访问根目录时,不会显示任何文件,尽管我有一个.htaccess文件,表示要打开位于根目录中的upload.cgi文件 当我将浏览器直接指向CGI文件时,它可以工作,但它会再次将我带到本地主机 我正在我自己的服务器上托管这个网站,也就是这台计算机,如果这些信息有用的话,我会使用XAMPP。我还使用DynDNS作为我的命名服务器 我希望你能给我一些

访问此页面并单击底部页脚链接之一。它会将您重定向到地址栏中的本地主机。我不知道它为什么会这样

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

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

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

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


我希望你能给我一些见解。

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


它总是把你带到本地主机。如果是您的情况,您需要的是
/foobar
,指示它应该从当前主机的根开始,并添加foobar路径。

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


它总是把你带到本地主机。如果是您的情况,您需要的是
/foobar
,指示它应该从当前主机的根开始,并添加foobar路径。

您使用什么来生成HTML?很明显,你不是手工写的,或者你已经有了问题的答案,但是听起来你导致了超链接的计算错误。您需要的是一个以/开头的链接,意思是您已经在的任何域的根,或者是相对于当前目录的路径。

您使用什么来生成HTML?很明显,你不是手工写的,或者你已经有了问题的答案,但是听起来你导致了超链接的计算错误。您需要的是一个以/开头的链接,意思是您已经在的任何域的根,或者相对于当前目录的路径。

如果这不是一个简单的HTML修复,我建议将此问题迁移到StackOverflow。(可能首先应该在那里)不耐烦:如果这不是一个简单的HTML修复,我建议将这个问题迁移到StackOverflow。(可能首先应该在那里)不耐烦:
$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) = ();