Add helper script apache-add-site.sh
This commit is contained in:
parent
50584cbf1b
commit
e6920b69bd
111
BashScripts/install-apache/apache-add-site.sh
Normal file
111
BashScripts/install-apache/apache-add-site.sh
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Make sure script is ran as root
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
exec sudo /bin/bash "$0" "$@"
|
||||||
|
fi
|
||||||
|
if [[ $1 = "" ]]; then
|
||||||
|
echo "Usage: add-site.sh [domain.com]"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
domain=$(perl -e "(\$d)=\"$1\"=~/(\\w+\\.\\w+)\$/;print \$d")
|
||||||
|
red='\033[0;31m'
|
||||||
|
green='\033[0;32m'
|
||||||
|
nocolor='\033[0m'
|
||||||
|
if [[ ! -d "/var/www/$1/www" ]]; then
|
||||||
|
# echo "Directory '/var/www/$1/www' does not exist"
|
||||||
|
# exit 1
|
||||||
|
mkdir "/var/www/$1"
|
||||||
|
mkdir "/var/www/$1/www"
|
||||||
|
fi
|
||||||
|
if [[ ! -d "/var/www/$1/logs" ]]; then
|
||||||
|
mkdir "/var/www/$1/logs"
|
||||||
|
fi
|
||||||
|
if [[ -f "/etc/apache2/sites-enabled/$1.conf" ]]; then
|
||||||
|
echo "Config file $1.conf does already exist"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
chmod -R 777 "/var/www/$1"
|
||||||
|
|
||||||
|
declare -a CertDirectories=("/var/www/$domain/certs" "/var/www/SSL-Cerfificates")
|
||||||
|
unset CertDirectory
|
||||||
|
for TestDirectory in "${CertDirectories[@]}"
|
||||||
|
do
|
||||||
|
if [[ -f "$TestDirectory/$domain-crt.pem" ]] && [[ -f "$TestDirectory/$domain-key.pem" ]] && [[ -f "$TestDirectory/$domain-chain.pem" ]]; then
|
||||||
|
CertDirectory=$TestDirectory;
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo Adding site
|
||||||
|
cat <<EOT1 >> "/etc/apache2/sites-enabled/$1.conf"
|
||||||
|
<VirtualHost *:80>
|
||||||
|
|
||||||
|
ServerName $1
|
||||||
|
ServerAlias www.$1
|
||||||
|
ServerAdmin webmaster@$1
|
||||||
|
DocumentRoot /var/www/$1/www
|
||||||
|
|
||||||
|
HostnameLookups Off
|
||||||
|
ErrorLog /var/www/$1/logs/error.log
|
||||||
|
CustomLog /var/www/$1/logs/access.log combined
|
||||||
|
|
||||||
|
<Directory /var/www/$1/www>
|
||||||
|
Options Indexes FollowSymLinks MultiViews
|
||||||
|
DirectoryIndex index.html index.pl
|
||||||
|
AllowOverride All
|
||||||
|
Require all granted
|
||||||
|
</Directory>
|
||||||
|
<Files ~ "\.(pl|cgi)$">
|
||||||
|
AddHandler cgi-script .pl
|
||||||
|
Options +ExecCGI
|
||||||
|
</Files>
|
||||||
|
|
||||||
|
</VirtualHost>
|
||||||
|
EOT1
|
||||||
|
|
||||||
|
if [[ ! $CertDirectory = "" ]]; then
|
||||||
|
echo Adding SSL settings
|
||||||
|
cat <<EOT2 >> "/etc/apache2/sites-enabled/$1.conf"
|
||||||
|
<IfModule ssl_module>
|
||||||
|
<VirtualHost *:443>
|
||||||
|
|
||||||
|
ServerName $1
|
||||||
|
ServerAlias www.$1
|
||||||
|
ServerAdmin webmaster@$1
|
||||||
|
DocumentRoot /var/www/$1/www
|
||||||
|
|
||||||
|
HostnameLookups Off
|
||||||
|
LogFormat "%h %l %u %{%Y-%m-%d %H:%M:%S}t \"%r\" %>s %b" mylogformat
|
||||||
|
ErrorLog /var/www/$1/logs/error-ssl.log
|
||||||
|
CustomLog /var/www/$1/logs/access-ssl.log mylogformat
|
||||||
|
|
||||||
|
<Directory /var/www/$1/www>
|
||||||
|
Options Indexes FollowSymLinks MultiViews
|
||||||
|
DirectoryIndex index.html index.pl
|
||||||
|
AllowOverride All
|
||||||
|
Require all granted
|
||||||
|
</Directory>
|
||||||
|
<Files ~ "\.(pl|cgi)$">
|
||||||
|
AddHandler cgi-script .pl
|
||||||
|
Options +ExecCGI
|
||||||
|
</Files>
|
||||||
|
|
||||||
|
SSLEngine on
|
||||||
|
SSLCertificateFile "$CertDirectory/$domain-crt.pem"
|
||||||
|
SSLCertificateKeyFile "$CertDirectory/$domain-key.pem"
|
||||||
|
SSLCertificateChainFile "$CertDirectory/$domain-chain.pem"
|
||||||
|
BrowserMatch "MSIE [2-5]" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
|
||||||
|
|
||||||
|
</VirtualHost>
|
||||||
|
</IfModule>
|
||||||
|
EOT2
|
||||||
|
fi
|
||||||
|
|
||||||
|
apacheresult=$(apachectl configtest 2>&1)
|
||||||
|
if [[ ! $apacheresult =~ "Syntax OK" ]]; then
|
||||||
|
rm "/etc/apache2/sites-enabled/$1.conf"
|
||||||
|
echo "Errors detected:"
|
||||||
|
echo "$apacheresult"
|
||||||
|
else
|
||||||
|
echo "Site added!"
|
||||||
|
systemctl restart apache2
|
||||||
|
fi
|
@ -71,6 +71,10 @@ Eller för en hel katalog (rekursivt)
|
|||||||
|
|
||||||
Alternativt lägg till <code>-C "<user@domain.com>"</code>
|
Alternativt lägg till <code>-C "<user@domain.com>"</code>
|
||||||
|
|
||||||
|
#### Aktivera credential store
|
||||||
|
|
||||||
|
<pre><code>git config --global credential.helper store</code></pre>
|
||||||
|
|
||||||
#### Aktivera Windows Credentials manager
|
#### Aktivera Windows Credentials manager
|
||||||
|
|
||||||
<pre><code>git config --global credential.helper manager
|
<pre><code>git config --global credential.helper manager
|
||||||
|
Loading…
x
Reference in New Issue
Block a user