Web application package guidelines
Package creation guidelines
CLR – Cross – Eclipse – Free Pascal – GNOME – Go – Haskell – Java – KDE – Kernel – Lisp – MinGW – Nonfree – OCaml – Perl – PHP – Python – Ruby – VCS – Web – Wine
This page describes how to package web application which tends to install into /srv/http (for example packages written in php, such as phpmyadmin and phpvirtualbox).
Contents
Directory structure
Layout example:
-
/etc/webapps/$pkgname -
/usr/share/webapps/$pkgname -
/var/...(according to generic FHS conventions)
/usr/share/webapps/$pkgname files and/or directories should be symlinked into /var and /etc/.
/etc/webapps/$pkgname should contain some examples which helps to setup web-server to run this web application:
-
/etc/webapps/$pkgname/apache.example.conf -
/etc/webapps/$pkgname/nginx.example.conf -
/etc/webapps/$pkgname/other-web-server.example.conf
Install web application package
Install with Apache
Install package
# install 'foo' package
# cp /etc/webapps/foo/apache.example.conf /etc/httpd/conf/extra/foo.conf
# edit /etc/httpd/conf/httpd.conf
Include conf/extra/foo.conf
Start server
# systemctl start httpd
Install with Nginx
Install package
# install 'foo' package # ln -s /usr/share/webapps/foo /srv/http # cp /etc/webapps/foo/nginx.example.conf /etc/nginx/extra/foo.conf # conf file may be not present.
You may need configure FastCGI-PHP, FastCGI-CGI
Start server
# systemctl start <fastcgi> # systemctl start nginx