Наверняка можно сделать лучше, но вроде работает: RewriteEngine On
RewriteCond %{REQUEST_URI} !^/bad\.php
RewriteCond %{REQUEST_URI} !^/mypage\.php [OR]
RewriteCond %{QUERY_STRING} !^j=[^&]+$
RewriteRule .* /bad.php? [R=301,L]
а как выглядит неправильная ссылка можно пример?
Для правильной ссылки должно быть какое-то правило например 3 первых символа буквы потом 1 цифра еще 3 буквы и цифра, иначе определить неправильные ссылки будет невозможно