Changez de programme AllowOverride pour <Directory / var / www />

Comment puis-je progamatiquement (en utilisant BASH) changer AllowOverride pour <Directory /var/www/> de 'None' à 'All'?

Plutôt que de devoir modifier manuellement /etc/apache2/sites-enabled/000-default

Normalement, je pourrais simplement utiliser sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/sites-enabled/000-default

Cependant, mon file par défaut 000 a d'autres directives AllowOverride que je ne souhaite pas modifier:

 NameVirtualHost * <VirtualHost *> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost> 

Par exemple, je ne souhaite pas AllowOverride sur /usr/share/doc ou /usr/lib/cgi-bin

Je veux simplement qu'il soit défini sur <Directory /var/www/> ps Je suis sur Ubuntu-Server 8.04.

Pour passer de None à All:

 awk '/<Directory \/var\/www\/>/,/AllowOverride None/{sub("None", "All",$0)}{print}'