Apache: Difference between revisions

From Q
Jump to navigation Jump to search
Tgurr (talk | contribs)
No edit summary
Tgurr (talk | contribs)
mNo edit summary
Line 1: Line 1:
{{Box File|/etc/portage/package.unmask|
{{File|/etc/portage/package.unmask|
<pre>
<pre>
dev-libs/apr
dev-libs/apr
Line 7: Line 7:
}}
}}


 
{{File|/etc/portage/package.use|
{{Box File|/etc/portage/package.use|
<pre>
<pre>
dev-db/phpmyadmin vhosts
dev-db/phpmyadmin vhosts
Line 16: Line 15:
}}
}}


{{Root|emerge apache php phpmyadmin}}


{{Codeline|# emerge apache php phpmyadmin}}
{{File|/createvirtualhost.sh|
 
{{Box File|/createvirtualhost.sh|
<pre>
<pre>
#!/bin/bash
#!/bin/bash
Line 114: Line 112:




{{Box Code|webapp-config|
{{Code|webapp-config|
<pre>
<pre>
install:
install:

Revision as of 17:48, 13 January 2011

File: /etc/portage/package.unmask
dev-libs/apr
dev-libs/apr-util
net-www/apache
File: /etc/portage/package.use
dev-db/phpmyadmin vhosts
dev-lang/php -xpm apache2 bzip2 mysql iconv unicode
net-www/apache apache2 threads mpm-peruser
# emerge apache php phpmyadmin
File: /createvirtualhost.sh
#!/bin/bash

#Usage:				createvirtualhost <virtualhostname>	<username>	(scp)
#Example with scp login:	createvirtualhost www.domain.com	domain		scp
#Example without scp login:	createvirtualhost subdomain.domain.com	subdomain

if [ "$3" = "scp" ] && [ ! -e /usr/sbin/scponlyc ]; then
echo -e You set the scponly options but scponly is not installed on your system. Installing it now...
emerge -a scponly
emerge -a --config =net-misc/scponly-4.6-r1
fi

htdocsuser=$(cat /etc/group | grep -c htdocs)

if [ $htdocsuser == 0 ]; then
echo -e Adding virtualhost group:
groupadd htdocs
else
echo -e Virualhost group htdocs exists - Good!
fi

echo -e Virtualhostname is: 	\	\	"$1"
echo -e Username for this virtual host is:\	"$2"

echo -e Adding virtualhost user:
if [ "$3" = "scp" ]; then
   useradd -m -d /var/www/$1 -k /home/scponly -g htdocs -s /usr/sbin/scponlyc $2
else
   useradd -m -d /var/www/$1 -k "" -g htdocs -s /bin/false $2 
fi

echo -e Populating virtualhost directory:
mkdir -p /var/www/$1/cgi-bin /var/www/$1/error /var/www/$1/htdocs /var/www/$1/icons /var/www/$1/sessions /var/www/$1/tmp
if [ "$3" = "scp" ]; then
rmdir /var/www/$1/incoming
fi

echo -e Setting up virtualhost root path permissions:
chown root:root /var/www/$1

echo -e Setting up virtualhost user permissions:
chown -R $2:htdocs /var/www/$1/cgi-bin /var/www/$1/error /var/www/$1/htdocs /var/www/$1/icons /var/www/$1/sessions /var/www/$1/tmp
chmod -R 700 /var/www/$1/cgi-bin /var/www/$1/error /var/www/$1/htdocs /var/www/$1/icons /var/www/$1/sessions /var/www/$1/tmp

if [ "$3" = "scp" ]; then
echo -e Setting up the scponly environment:
echo root:x:0:0:root:/root:/bin/false > /var/www/$1/etc/passwd
cat /etc/passwd | grep $1 >> /var/www/$1/etc/passwd
echo root:x:0:root > /var/www/$1/etc/group
cat /etc/group | grep htdocs >> /var/www/$1/etc/group
fi

if [ "$3" = "scp" ]; then
echo -e Setting up scponly readonly permissions:
chown -R root:root /var/www/$1/bin /var/www/$1/dev /var/www/$1/etc /var/www/$1/lib /var/www/$1/usr

echo -e Setting scponly user password:
passwd $2
fi

#Virtual host template
# Options Indexes FollowSymlinks replaced with None

echo "Processor $2 htdocs
<VirtualHost *:80>

    DocumentRoot \"/var/www/$1/htdocs\"
    ServerName $1
    DirectoryIndex index.htm index.html index.php

    <IfModule mpm_peruser_module>
        ServerEnvironment $2 htdocs
    </IfModule>

    <Directory \"/var/www/$1/htdocs\">
	Options None
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    php_admin_value open_basedir /var/www/$1:/usr/bin:/usr/share/php
    php_admin_value upload_tmp_dir /var/www/$1/tmp
    php_admin_value session.save_path /var/www/$1/sessions

    # Example phpmyadmin:
    # Alias / /var/www/subdomain.domain.de/htdocs/phpmyadmin/

</VirtualHost>" > /etc/apache2/vhosts.d/$1.conf


Code: webapp-config
install:
emerge phpmyadmin
install in verzeichnis phpmyadmin
webapp-config -I -h subdomain.test-domain.de -d phpmyadmin phpmyadmin 2.8.2.1
install direkt in webroot
webapp-config -I -h subdomain.test-domain.de phpmyadmin 2.8.2.1
mysql -u root -p < /usr/share/webapps/phpmyadmin/2.8.2/sqlscripts/mysql/2.8.2_create.sql
<root passwort>

upgrade:
emerge phpmyadmin
webapp-config -U -h subdomain.test-domain.de -d phpmyadmin phpmyadmin 2.8.2.2
bzw
webapp-config -U -h subdomain.test-domain.de phpmyadmin 2.8.2.2
CONFIG_PROTECT="/var/www/subdomain.test-domain.de/htdocs/phpmyadmin//libraries" etc-update
neue config löschen oder updaten und erneut 
mysql -u root -p < /usr/share/webapps/phpmyadmin/2.8.2.2/sqlscripts/mysql/2.8.2.2_create.sql
ausführen
emerge -C phpmyadmin-alt

uninstall:
webapp-config -C -h subdomain.test-domain.de -d phpmyadmin
bzw.
webapp-config -C -h subdomain.test-domain.de phpmyadmin



Webserver domain.de:
webapp-config -I -h phpmyadmin.domain.de -d phpmyadmin phpmyadmin 2.8.2.2
update:
emerge phpmyadmin
webapp-config -U -h phpmyadmin.domain.de -d phpmyadmin phpmyadmin 2.8.2.4
CONFIG_PROTECT="/var/www/phpmyadmin.domain.de/htdocs/phpmyadmin//libraries" etc-update
1
2
y
emerge -C phpmyadmin-<oldversion>

Kategorie:Software