Closed Bug 1200620 Opened 9 years ago Closed 9 years ago

Bugzilla on IIS - Access via REST API returns Error 404

Categories

(Bugzilla :: WebService, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: bgx, Unassigned)

References

Details

Attachments

(1 file)

Attached file rest_for_windows.cgi
User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0
Build ID: 20150827142634

Steps to reproduce:

I tried out the REST API on an Bugzilla 5.0 installed on Windows Server 2012 with IIS.
Test call was "example.com/rest/version" with Firefox 41 (in combination with Bug 1200604)


Actual results:

Perl is executet on the Server, but no useful output is generated from it. The Webserver returns a 404 Error. 


Expected results:

Expected was a html formatted json output.
The problems lies in the rest.cgi script.

I got a working version from dylan(irc) and attached it.

He added:
my $cgi = Bugzilla->cgi;
my $path = $cgi->path_info;
$path =~ s!^/rest\.cgi!!;
$cgi->path_info($path);

This strips the "rest.cgi" part off of the path_info parameter.
Attachment #8655439 - Attachment mime type: application/x-perl → text/plain
With the configuration used in bug 1200604, REST works correctly with Bugzilla 5.0.1. You should upgrade your CGI module. It contains fixes specific to IIS.
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
As you can see with bug 1231898, CGI.pm in version 4.09 is not easily available on Windows with one of the major Perl distributions ActiveState Perl[1] and even if it was, Bug 1088022 shows that you don't require 4.09 yet. So there wouldn't be any indication in the docs or checksetup.pl that IIS users need a newer version of CGI.pm. Additionally, Bug 1088022 explicitly states that with version 4.09 no workaround in Bugzilla::CGI would be needed anymore, so the code to make Bugzilla more compatible in different environments seems to already be available. In the end, why should the workaround be kept in Bugzilla::CGI::new, while at the same time the exactly same problem is not worked around at in REST.pm?

I hope you reconsider that decision.

[1]: https://code.activestate.com/ppm/CGI.pm/
(In reply to Thorsten Schöning from comment #2)
> As you can see with bug 1231898, CGI.pm in version 4.09 is not easily
> available on Windows with one of the major Perl distributions ActiveState
> Perl[1]
> [1]: https://code.activestate.com/ppm/CGI.pm/

This is not the correct URL. See: https://code.activestate.com/ppm/CGI/ It contains the latest CGI 4.22.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: