Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
(cherry picked from commit 5cca1bdcd67a1a8fc8b0bb2aa6c666cccdb49fbb)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit 57b1c90e19)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
ReverseProxy middleware can modify SERVER_PORT which is used to
determines which app (opac or intranet) to run, so the choice should be
made before ReverseProxy middleware
Signed-off-by: Jerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch is a proof-of-concept of Koha as a Mojolicious application
This has several benefits:
- Development setup is easier. No need for apache or nginx. Just run
`morbo bin/intranet` or `morbo bin/opac` and go to
http://localhost:3000 (URL rewrites and static files are handled by
the app)
- apache2/nginx configuration is simpler too (an example of nginx
configuration is included in the patch)
- starman and plack middlewares can still be used for debug or gzip
compression for instance (see app.psgi)
- Using Test::Mojo we can test the whole application, as we do with the
REST API (which is a Mojolicious application too)
- It opens a way for converting CGI scripts into Mojolicious
controllers and actions (even if that's not possible at the moment
because of the authentication code)
It uses the same mechanism as Plack::App::CGIBin to deal with CGI
scripts, so it should be equivalent in terms of performance
How to test ?
- Run `morbo bin/intranet`, then go to http://localhost:3000/ and try to
find bugs. Check the REST API at http://localhost:3000/api/v1
- Run `morbo bin/opac`, then go to http://localhost:3000/ and try to
find bugs. Check the REST API at http://localhost:3000/api/v1
- Run `starman -l :5000 -l :5001` and verify that intranet
(http://localhost:5000) and opac (http://localhost:5001) work normally
- Read the code (and the comments), it's not very long
Signed-off-by: Jerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>