logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Catalyst::Manual::DevelopmentServer - Development server deployment

Authors

       Catalyst Contributors, see Catalyst.pm

Name

       Catalyst::Manual::DevelopmentServer - Development server deployment

       The development server is a mini web server written in Perl. However, if you supply the "-f" option to
       the development server, it will load the higher performance Starman server, which can be used as an
       application server with a lightweight proxy web server at the front.

Setup

Startupthedevelopmentserver
          script/myapp_server.pl -p 8080 -k -f --pidfile=/tmp/myapp.pid

       You will probably want to write an init script to handle stop/starting the app using the pid file.

   ConfiguringApache
       Make sure mod_proxy is enabled and add:

           # Serve static content directly
           DocumentRoot /var/www/MyApp/root
           Alias /static /var/www/MyApp/root/static

           ProxyRequests Off
           <Proxy *>
               Order deny,allow
               Allow from all
           </Proxy>

           # Need to specifically stop these paths from being passed to proxy
           ProxyPass /static !
           ProxyPass /favicon.ico !

           ProxyPass / http://localhost:8080/
           ProxyPassReverse / http://localhost:8080/

           # This is optional if you'd like to show a custom error page
           # if the proxy is not available
           ErrorDocument 502 /static/error_pages/http502.html

       You can wrap the above within a VirtualHost container if you want different apps served on the same host.

   Otherwebservers
       The proxy configuration above can also be replicated with a different frontend server or proxy, such as
       varnish, nginx, or lighttpd.

See Also