Правило перезаписи принимает регулярное выражение в качестве первого параметра, а не шаблон строки шаблона.
Это, вероятно, то, что вы ищете вместо:
RewriteEngine on
RewriteCond %{QUERY_STRING} limit
RewriteRule ^/?scripts/api(_\d+)?\.php$ - [E=Cache-Control:max-age=3600]
Возможно, также имеет смысл использовать более точный шаблон в условии ... Например, чтобы предотвратить случайное вмешательство других аргументов HTTP GET, например, ...&otherArg=mylimit&...
, что, вероятно, не что вы хотите принять за limit
...