Use o PHP para adicionar dinamicamente o arquivo .htaccess?

O que estou tentando fazer é automatizar o processo de atuação em sites. Esses sites são criados dinamicamente usando htaccess, então aqui está um exemplo:

RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC] RewriteRule ^(.*)$ /folder%{REQUEST_URI}?%{QUERY_STRING} [QSA,L] 

O que faço é adicionar um alias de domínio para o domain.com e, em seguida, apontá-lo para o IP do servidor e o arquivo htaccess faz com que ele veja o que está na pasta /.

Isso funciona bem, mas estamos planejando ter centenas de sites e adicionar esse trecho de código ao htaccess manualmente pode ficar muito irritante. Uma vez que tudo o que estou mudando é domain.com e a pasta / , existe uma maneira de usar o PHP para adicionar dinamicamente à parte inferior do arquivo .htaccess se eu criar um formulário e dizer-lhe o domínio e a pasta, ele irá adicioná-lo para o fundo do arquivo htaccess?

Isso economizaria tanto tempo.

Muito obrigado.

Eu realmente não recomendo permitir que a php adicione QUALQUER COISA a .htaccess, é um grande risco de segurança.

 //but here is your code $f = fopen(".htaccess", "a+"); fwrite($f, "your content"); fclose($f); 

Aqui está:

 function writeht($domain, $folder) { $fp = fopen('.htaccess','a+'); if($fp) { fwrite($fp,' RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteCond %{HTTP_HOST} ^(www\.)?'.str_replace('.','\.',$domain).'$ [NC] RewriteRule ^(.*)$ /'.$folder.'%{REQUEST_URI}?%{QUERY_STRING} [QSA,L]'); fclose($fp); } } //usage: writeht("domain.biz","yourfolder"); 

Funciona bem para mim com 0644 permissions em .htaccess (como o PHP é executado sob o mesmo usuário que o proprietário do arquivo)

Certo. É apenas outro arquivo, desde que o processo tenha permissão para escrever no arquivo.

Uma maneira bastante confortável é usar a class PEAR File_HtAccess . Mas, como disse antes, você não deveria escrever o arquivo de um PHP-Script acessível via web.