J'essaie d'automatiser l'approvisionnement d'une boîte Ubuntu Vagrant avec un script Bash. Tout va bien, mais j'ai du mal à configurer Apache pour autoriser les remplacements à partir des .htaccess
fichiers. Dans mon fichier de configuration, il y a le bloc suivant:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
Tout ce que je dois faire est de le remplacer AllowOverride None
par AllowOverride all
. Cela semble être une tâche pour sed
, mais il y a d'autres <Directory>
blocs dans ce fichier de configuration où je ne veux pas autoriser la substitution.
Comment puis-je utiliser sed pour remplacer une chaîne spécifique par une nouvelle chaîne, lorsque cette chaîne spécifique se produit entre deux autres chaînes spécifiques?
En d'autres termes, comment puis-je remplacer AllowOverride None
uniquement lorsqu'il apparaît entre <Directory /var/www/>
et </Directory>
?
Je peux utiliser la commande suivante pour obtenir le bloc qui m'intéresse:
sed -n '/<Directory \/var\/www\/>/,/<\/Directory>/p' 000-default