我在Windows 7,Apache 2.4上安装了Bugzilla。它可以在http://localhost:80/bugzilla/访问,这意味着当我在浏览器中输入该地址时,我会看到bugzilla主页,我可以以管理员身份登录,一切都很好。
我在Bugzilla的文档中读到Bugzilla有一个“原生REST API”,可用于与之交互。例如,据称向地址发送GET:/rest/version
将返回已安装的bugzilla的版本;问题是,它没有!
我构建了一个请求:http://localhost:80/bugzilla/rest/version
,我收到404 not found
错误。我从其余的documentation examples中得到“任何”请求的确切结果。
我错过了什么?我做错了什么?
顺便说一下,checksetup.pl显示我的安装缺少这3个包:
perl-ldap
mod_perl
Apache-SizeLimit
这可能是原因吗?
更新1:安装了perl-ldap(Net :: LDAP)。但是cheksetup.pl仍然显示它没有安装,问题仍然存在。
更新2:已安装LDAP但问题仍然存在:(
答案 0 :(得分:5)
我的bugzilla安装也返回“404 not found”。 我必须使用此URL才能正常工作:http://localhost:80/bugzilla/rest.cgi/version
Bugzilla安装附带一个默认的.htaccess
文件,用于执行重写工作:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteOptions
inherit RewriteRule ^rest/(.*)$ rest.cgi/$1 [NE]
</IfModule>
所有我必须做的:“a2enmod rewrite
”和“service apache2 restart
”启用apache模块,然后网址“website/rest/version
”正常工作。