Hi,
>> RewriteRule ^/index.php\?option=login$ /register
[R=301,L]
>
>I think you may be caught by RewriteRule not matching
>against query strings. Per the docs:
>
> What is matched?
> ...
> * If you wish to match against the hostname, port,
> or query string, use a RewriteCond with the
> %{HTTP_HOST}, %{SERVER_PORT}, or %{QUERY_STRING}
> variables respectively.
>
>Source:
>https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#what_is_matched
>
>I believe you want to use something like:
>
> RewriteCond %{QUERY_STRING} ^option=login$
> RewriteRule ^/index.php?$ /register [R=301,L]
>
>It's been a while since I've done this, so I'm not sure
>whether the "?" after index.php is matched. You may need to
>adjust that pattern.
I would expect to not want the "?" in the RewriteRule; it should be
stripped by the process which breaking things into the path and the
query_string. Untested opinion, it has been a while for me too.
And in principle you want to escape the ".": "\."
Both with the ? and without didn't make a difference. It didn't work either way.
It seemed to ignore it entirely. It continued to report "component not
found", as if it's trying to process the option= portion.
If no one has any further ideas, perhaps you know of a better resource?
Of course I'm also happy to try other ideas...