Redirect & permalink problems after moving multisite to a new server

Well, the answer has several different ways..

==Method 1==

(when you want your website permalinks to become like example.com/wp/smth )

if so, just change this:

 RewriteBase /

to

 RewriteBase /wp

and in database, change all occurrences of example.com/ to example.com/wp/

==Method 2==

(when you want your website permalinks to remain example.com/smth )

Now you have A and B methods (As you say, you have made some changes to DB manually… revert them back and continue reading..). :

A) you should move all things from wp folder to public_html folder.

B) to use only .htaccess trick to solve the problem, and you can place all files into root>wp folder :

<IfModule mod_rewrite.c>
# move primary domain to subfolder
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/wp/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wp/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ wp/index.php [L] 
</IfModule>

just change example.com and put this htaccess into PUBLIC_HTML folder (so, wordpress .htaccess should be in wp folder)