I don’t know about simple terms, but here’s the doc page from apache: https://httpd.apache.org/docs/1.3/mod/mod_rewrite.html and here’s a little more info also from apache: https://httpd.apache.org/docs/1.3/misc/rewriteguide.html
My interpretation of that code is:
RewriteEngine On
# Wake up the rewriting elves!
RewriteBase /
# Start with the server root.
RewriteCond %{REQUEST_FILENAME} !-f
# If the request is for a real directory (one that exists
# on the server), index.php isn’t served.
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is for a file that exists already on
# the server, index.php isn’t served.
RewriteRule . /index.php [L]
# This is the rule that corresponds to the above two
# conditions. I think it will put /index.php on the
# end of any request that does not match the conditions.
# I think.
Actually, the answers for the %{REQUEST_FILENAME} bits I copied from this thread over here:
https://forum.mamboserver.com/archive/index.php/t-42366.html
This is pretty confusing stuff. Here’s a little more info in regards to permalinks: https://codex.www.ads-software.com/Using_Permalinks but I’m still trying to research some weird behavior with this exact set of rules, but using the litespeed server software.
Like a dinghy afloat on the sea of life.