Re: [shell]supprimer un bloc de texte
dexinou a écrit :
> Bonjour à la liste,
>
> J’essai en vain de supprimer un bloc dans le virtualhost apache :
>
>
>
> #!/bin/sh
>
> echo "Quel VirtualHost voulez-vous supprimer ? : "
>
> read USER
>
> cat /root/vhost.conf | grep $USER
>
> sed -i '/<VirtualHost/{:a; N; /<\/VirtualHost/!ba;
> /'$USER'\.domaine.com/d }' /root/vhost.conf
>
> exit 0
>
>
>
> voici le vhost.conf
>
> <VirtualHost *:80>
>
> ServerName toto.domain.com
>
> ServerAdmin webmaster@domain.com
>
> DocumentRoot /var/www/vhosts/toto/
>
> </VirtualHost>
>
>
>
> <VirtualHost *:80>
>
> ServerName tata.domain.com
>
> ServerAdmin webmaster@domain.com
>
> DocumentRoot /var/www/vhosts/tata/
>
> </VirtualHost>
>
>
>
> Comment supprimer le vhost du servername toto.domain.com avec sed?
>
> Donc supprimer le bloc à partir de <VirtualHost * :80> jusqu’à
> </VirtualHost> du ServerName toto.domain.com
>
> Merci pour l’aide car ça fait 1 semaine que je cherche en vain
>
>
>
Hello,
En fait, ce que tu cherches à faire existe déjà :-)
VOila comment je fais sur mon serveur etch:
Dans /etc/apache2/sites-available, tu mets 1 fichier par VH.
# cat /etc/apache2/sites-available/xxx.fr
<VirtualHost *:80>
ServerName xxx.fr
DocumentRoot "/var/www/xxx.fr/"
ErrorLog /var/log/apache2/error.log
CustomLog "| /usr/bin/logger -p local7.info -t apache_access_log"
vhost_common
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Ensuite, tu l'actives en faisant: a2ensite xxx.fr
En faisant ca, il te crée un lien symbolique de xxx.fr dans
/etc/apache2/sites-enabled.
Pour désactiver un VH, il suffit de faire a2dissite sur ton VH.
Désolé, si ca ne répond pas directement à ta question, mais c'est
toujours bon à savoir je pense :-)
PS: Ces commandes ne marchent qu'en root et il faut reloader apache après.
Bon courage :-)
Reply to: