mailinabox/setup/web.sh

48 lines
1.6 KiB
Bash
Raw Normal View History

#!/bin/bash
2013-09-01 14:24:49 +00:00
# HTTP: Turn on a web server serving static files
#################################################
2014-06-03 11:12:38 +00:00
source setup/functions.sh # load our functions
source /etc/mailinabox.conf # load global vars
apt_install nginx php5-cgi
2013-09-01 14:24:49 +00:00
2013-09-07 20:53:25 +00:00
rm -f /etc/nginx/sites-enabled/default
# copy in a nginx configuration file for common and best-practices
# SSL settings from @konklone
cp conf/nginx-ssl.conf /etc/nginx/nginx-ssl.conf
2013-09-07 20:53:25 +00:00
# Other nginx settings will be configured by the management service
# since it depends on what domains we're serving, which we don't know
# until mail accounts have been created.
# make a default homepage
if [ -d $STORAGE_ROOT/www/static ]; then mv $STORAGE_ROOT/www/static $STORAGE_ROOT/www/default; fi # migration
mkdir -p $STORAGE_ROOT/www/default
if [ ! -f STORAGE_ROOT/www/default/index.html ]; then
cp conf/www_default.html $STORAGE_ROOT/www/default/index.html
chown -R $STORAGE_USER $STORAGE_ROOT/www/default/index.html
fi
2013-09-07 20:53:25 +00:00
# Create an init script to start the PHP FastCGI daemon and keep it
# running after a reboot. Allows us to serve Roundcube for webmail.
rm -f /etc/init.d/php-fastcgi
ln -s $(pwd)/conf/phpfcgi-initscript /etc/init.d/php-fastcgi
update-rc.d php-fastcgi defaults
2013-09-01 14:24:49 +00:00
# Put our webfinger server script into a well-known location.
cp tools/webfinger.php /usr/local/bin/mailinabox-webfinger.php
chown www-data.www-data /usr/local/bin/mailinabox-webfinger.php
mkdir -p $STORAGE_ROOT/webfinger/acct;
chown -R $STORAGE_USER $STORAGE_ROOT/webfinger
# Start services.
service nginx restart
service php-fastcgi restart
2013-09-01 14:24:49 +00:00
# Open ports.
ufw_allow http
ufw_allow https
2013-09-01 14:24:49 +00:00