* [[https://www.tectite.com/terry_allen_guide/web-content/index.html|formmail.pl - Installing a webform to email processor]]
==== Install and configure lighttpd ====
* [[https://www.cyberciti.biz/tips/installing-and-configuring-lighttpd-webserver-howto.html|General install and config]]
* [[https://redmine.lighttpd.net/projects/lighttpd/wiki/IPv6-Config|When the web server is running but you cannot connect to it!]]
* [[https://redmine.lighttpd.net/boards/2/topics/5622|mod_alias & mod_rewrite modules in the right order]]
==== Installing a lighttpd webserver without root access ====
This is not dificult but if a local version of Perl is also being used, it may be tricky to get the local version of Perl modules to run (See [[Perl|Install additional modules locally without root access]])
This is an example of a lighttpd.conf file that works for me (serving Perl pages from the locally installed Perl)
# ============================================================================================================
# see full config example at
# https://redmine.lighttpd.net/projects/lighttpd/repository/14/revisions/master/entry/doc/config/lighttpd.conf
# ============================================================================================================
var.root = ""
var.log_root = root + "/lighttpd/log"
var.doc_root = root + "/dbahawk_server"
setenv.add-environment = ("PERL5LIB" => root + "/perl5/lib/perl5")
server.modules = (
"mod_access",
"mod_cgi",
"mod_alias",
"mod_accesslog",
"mod_compress",
"mod_redirect"
)
# this assigns the local Perl but does not catch the local value of PERL5LIB, so... cgi.assign = ( ".pl" => root + "/opt/perl/bin/perl",
cgi.assign = ( ".pl" => root + "/opt/perl/bin/execperl.ksh",
".py" => "/usr/bin/python"
)
server.document-root = doc_root + "/html"
server.port = 3000
server.errorlog = log_root + "/error.log"
#server.pid-file = "lighttpd.pid"
#server.username = "u024124"
#server.groupname = "cln"
#server.port = 3000
mimetype.assign = (
".html" => "text/html",
".txt" => "text/plain",
".jpg" => "image/jpeg",
".css" => "text/css",
".png" => "image/png"
)
index-file.names = ( "index.php", "index.html", "index.pl" )
#static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".scgi" )
alias.url += ( "/cgi-bin" => doc_root + "/cgi-bin/" )
url.access-deny = ( "~", ".inc" )
#auth.backend = "plain"
#auth.backend.plain.userfile = "/etc/lighttpd/.lighttpdpwd"
#auth.require = ( "/var/www" =>
#(
#.method. => "basic",
#.realm. => "Authentication required",
#.require. => "user=admin"
#)
#)
where execperl.ksh looks like this
#!/usr/bin/env ksh
export PERL5LIB="${HOME}/opt/perl:${PERL5LIB}"
export PATH="${HOME}/opt/perl/bin:${PATH}"
exec perl
=== Use the new version of Perl ===
vi $HOME/.bashrc
export PERL5LIB="/home/users/u024124/perl5/lib/perl5"
export PATH="${HOME}/opt/perl/bin:${PATH}"
=== Syntax check the webserver config ===
cd /home/users/u024124/lighttpd/sbin
./lighttpd -tf ../etc/lighttpd.conf
=== Start the webserver ===
./lighttpd -Df ../etc/lighttpd.conf >/dev/null 2>&1 &
==== Bootstrap ====
* [[https://getbootstrap.com/docs/4.0/components/navs/|How to use Bootstrap 4’s included navigation components]]
* [[https://www.w3schools.com/bootstrap/default.asp|w3schools.com - Bootstrap 3]]
* [[https://getbootstrap.com/docs/4.1/utilities/spacing/|Spacing with Bootstrap 4]]