gpt4 book ai didi

apache - 如何在apache服务器上运行cgi脚本

转载 作者:行者123 更新时间:2023-12-02 09:59:11 27 4
gpt4 key购买 nike

这是我的程序:

[root@localhost cgi-bin]# locate first.pl 
/home/Ram/Desktop/work/first.pl
/usr/local/apache2/cgi-bin/first.pl
[root@localhost cgi-bin]# cd /usr/local/apache2/cgi-bin/
[root@localhost cgi-bin]# vi first.pl
#!/usr/bin/perl -w
use warnings;
use warnings;
use CGI;
print "content-type: text/html\n\n";
print "<h2>Hello, World!</h2>\n";

我从浏览器中调用脚本,如下所示:

http://localhost/usr/local/apache2/cgi-bin/first.pl

我没有得到输出,但出现错误:

Not Found

The requested URL /usr/local/apache2/cgi-bin/first.pl was not found on this server.

Apache/2.2.15 (CentOS) Server at localhost Port 80

我在 Web 浏览器中检查了 Apache Web 服务器是否正常工作:

https://localhost

它显示欢迎页面。

如何解决此错误?

最佳答案

在 Linux 上安装 apache2 后,您基本上需要更改两个文件。

转到终端并设置以下配置:

  1. sudo vim /etc/apache2/sites-enabled/000-default.conf并添加以下内容:

    <Files ~ "\.(pl|cgi)$">
    SetHandler perl-script
    PerlResponseHandler ModPerl::PerlRun
    Options +ExecCGI
    PerlSendHeader On
    </Files>
  2. sudo vim /etc/apache2/apache2.conf并添加以下内容:

    <Directory /var/www/cgi-bin/>
    AddHandler cgi-script .cgi .pl
    Options FollowSymLinks ExecCGI
    AllowOverride None
    </Directory>

添加这两个配置更改后,编写一个 perl 脚本,将其放在 cgi-bin 目录中,然后赋予其足够的权限( sudo chmod 755 <filename> )

最后,重新启动apache2:sudo apache2ctl restart

截图: default.conf apache2.conf

关于apache - 如何在apache服务器上运行cgi脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21698645/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com