У нас разработка идет на apache а продакшен / дев сервера на nginx.
В итоге собрали мини скрипт для автоматизации конвертации:
В конфиге nginx сделали инклуд отдельного файла, в который пишем из скрипта обновленный код.
У нас не используются специфичные инструкции, поэтому весь код условно
$htaccess = file('.htaccess');
foreach ($htaccess as $line)
{
if (substr($line,0,11) == 'RewriteRule')
{
$line = str_replace('RewriteRule ^','rewrite ^/',$line);
$line = str_replace('[QSA,L]','last;',$line);
echo $line, "\n";
}
}
Ну и делаем nginx reload после этого
PS
В целом у нас это все выглядит так:
Конфиг nginx для домена
server {
server_name mysite.com;
set $site_root '/www/mysite.com';
...
include /etc/nginx/conf.d/mysite.com-rewrite.inc;
...
}
Есть самописная система деплоя, когда нужно сделать деплой просто запускает условно
php _redirect_maker.php > /etc/nginx/conf.d/mysite.com-rewrite.inc
service nginx reload