Bug 17030: Enable REST api on packages
authorTomas Cohen Arazi <tomascohen@theke.io>
Thu, 4 Aug 2016 14:39:25 +0000 (11:39 -0300)
committerKyle M Hall <kyle@bywatersolutions.com>
Mon, 8 Aug 2016 13:17:34 +0000 (13:17 +0000)
This patch enables access to the REST API endpoint on packages setup.
It does so, by patching the shared apache-shared-intranet.conf and
apache-shared-opac.conf.

You can build your own master packages with this patch applied, or just:

- Grab
  debian/templates/apache-shared-intranet.conf
  debian/templates/apache-shared-opac.conf
and overwrite their counterparts in /etc/koha on a packages setup. For example
in kohadevbox.
- Have Koha loaded with all default data
- Create a superlibrarian user for you
- Login to the intranet and the OPAC
- Point your browser to:
  http://localhost:8080/api/v1/patrons/51
=> SUCCESS: You get JSON data, for the patron you requested
  http://localhost:8081/api/v1/patrons/51
=> SUCCESS: You get JSON data, for the patron you requested
- Sign off :-D

Note: I use the HTTPRequester addon for Firefox, re-using the CGISESSID value from the
browser session cookie, in the headers.

Signed-off-by: Benjamin Rokseth <benjamin.rokseth@kul.oslo.kommune.no>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

debian/templates/apache-shared-intranet.conf
debian/templates/apache-shared-opac.conf

index 06d2b18..2117942 100644 (file)
@@ -17,3 +17,17 @@ RewriteRule (.+) $1?%1%2 [N,R,NE]
 RewriteRule ^/bib/([^\/]*)/?$ /cgi-bin/koha/detail\.pl?bib=$1 [PT]
 RewriteRule ^/isbn/([^\/]*)/?$ /search?q=isbn:$1 [PT]
 RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
+
+Alias "/api" "/usr/share/koha/api"
+<Directory "/usr/share/koha/api">
+    Options +ExecCGI +FollowSymlinks
+    AddHandler cgi-script .pl
+
+    SetEnv MOJO_MODE "production"
+
+    RewriteBase /api/
+    RewriteCond %{REQUEST_FILENAME} !-f
+    RewriteCond %{REQUEST_FILENAME} !-d
+    RewriteCond %{DOCUMENT_ROOT}/../api/$1/app.pl -f
+    RewriteRule ^(.*?)/.* $1/app.pl/api/$0 [L]
+</Directory>
index 392a013..0e18bc2 100644 (file)
@@ -24,3 +24,17 @@ RewriteRule ^/issn/([^\/]*)/?$ /search?q=issn:$1 [PT]
         Require all granted
     </Directory>
 </IfVersion>
+
+Alias "/api" "/usr/share/koha/api"
+<Directory "/usr/share/koha/api">
+    Options +ExecCGI +FollowSymlinks
+    AddHandler cgi-script .pl
+
+    SetEnv MOJO_MODE "production"
+
+    RewriteBase /api/
+    RewriteCond %{REQUEST_FILENAME} !-f
+    RewriteCond %{REQUEST_FILENAME} !-d
+    RewriteCond %{DOCUMENT_ROOT}/../api/$1/app.pl -f
+    RewriteRule ^(.*?)/.* $1/app.pl/api/$0 [L]
+</Directory>