2

我正在尝试通过 Easy PHP Dev Server 13.1(Apache 2.2,Windows 7)在本地运行 Web Blast 2.2.28+,但是当我单击搜索时,当我在我的站点中打开它时显示 ERROR 403 或出现以下消息( blast.cgi 内容),当我直接使用 blast.html 页面时:

#!/bin/csh -f
  #
  # $Id: blast.cgi,v 1.1 2002/08/06 19:03:51 dondosha Exp $
  #
  echo "Content-type: text/html"
  echo ""
  #setenv DEBUG_COMMAND_LINE TRUE
  setenv BLASTDB db
  ./blast.REAL

Apache 安装在“C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\binaries\apache\bin”并配置如下(httpd.conf):

# Added below to get wwwblast to work
  AddHandler cgi-script .cgi
  <Directory "C:/Program Files (x86)/EasyPHP-DevServer-13.1VC9/data/localweb/original/cgi-bin/">
  AddHandler cgi-script .cgi REAL
  Options Indexes
  Options FollowSymLinks
  Options ExecCGI
  Options Indexes
  Order allow,deny
  Allow from all
  </Directory>

blast.html 文件位于“C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\original\cgi-bin”。

在 Apache Access 日志中,我发现:

127.0.0.1 - - [08/Oct/2013:19:40:13 -0300] "GET /original/?area=tools HTTP/1.1" 200 1797
127.0.0.1 - - [08/Oct/2013:19:44:27 -0300] "POST /original/cgi-bin/blast.cgi HTTP/1.1" 403 1115

并在 Apache 错误日志中:

[Tue Oct 08 19:44:27.607881 2013] [cgi:error] [pid 6084:tid 1036] [client 127.0.0.1:52298] Options ExecCGI is off in this directory: C:/Program Files (x86)/EasyPHP-DevServer-13.1VC9/data/localweb/original/cgi-bin/blast.cgi, referer: http://127.0.0.1/original/cgi-bin/blast.html

我真的不太了解 Apache,但我没有在 httpd.conf 中激活 ExecCGI 吗?我很困惑。

我一直在尝试我能想象到的所有组合(更改路径、文件名、apache 选项序列),但是……什么都没有。

有人可以帮助我吗?我非常需要,自 2012 年以来我一直在努力让它运行。

谢谢大家,对任何语言问题感到抱歉=)。迪米特里乌斯

4

1 回答 1

1

编辑:对不起,我最初错过了 Windows 7。Afaik,没有 Windows 版本的 wwwblast 二进制文件。因此,您在这里尝试做的事情是行不通的。你有几个选择:

  • 切换到支持的操作系统(Linux、MacOs、FreeBSD、Solaris)
  • 使用其他东西(例如SequenceserverViroBlast
  • 尝试在 Windows 上从源代码编译(祝你好运)

下面的其余部分只是一个小错误。


您似乎错过了“+”:

 Options +ExecCGI

不是

 Options ExecCGI

等等。apacheOptions +Indexes配置需要 + 或 - 用于布尔选项来打开或关闭它们。

另外,这个问题不是更适合 serverfault 吗,因为它是关于服务器配置而不是编程?

见: http ://httpd.apache.org/docs/current/howto/cgi.html

于 2013-10-09T08:09:53.697 回答