Our site developer built a new site for us on wpengine.com. They did a search and replace to fix the URL references before exporting the database and zipping it with the site files to send to us.
I installed and configured everything I know to install (MySQL 5.7.33, URL Rewrite 2.1, PHP 7.4, Wordpress 5.6) and got that all working with a vanilla Wordpress site configured for multisite. I then copied over the new site files, imported the database, and adjusted web.config and wp-config. There is currently only one site in the install. The developer is still building the additional sites for us.
I can get to the home page of the first site, but clicking any links to subpages gives me a 404 Not Found error. I can log in to the admin portal, but it prompts me to re-enter my username and password if I click in to any of the menus. I added the 7 rewrite rules I found in posts on this site. I also tried using IIS's URL Rewrite module to convert the rules from the .htaccess file that came with the new site. I'm a bit out of my element and have exhausted my Google-fu. Does this sound like a rewrite problem or something in the database?
UPDATE: I made some progress. I downloaded a fresh backup of the now live site from wpengine and did a more controlled copy of it into the working, clean Wordpress install on my test server. I only copied wp-content and some files from the root directory that were not present on the test server. This fixed access to wp-admin.
I was then able to tinker with the Permalinks setting. Our developer had it set custom as /%postname%/. If I change it to /index.php/%postname%/ I can get the first level and some second level subpages to work. As I browse deeper though, I eventually get "Sorry, we couldn't fin what you're looking for," or the original 404 error I was getting before.
Am I correct to believe this says it's a problem with the rewrite rules and/or permalinks setting?