Index: src/wp-admin/network/site-info.php
===================================================================
--- src/wp-admin/network/site-info.php	(revision 25261)
+++ src/wp-admin/network/site-info.php	(working copy)
@@ -48,9 +48,15 @@
 	check_admin_referer( 'edit-site' );
 
 	switch_to_blog( $id );
+	$blog_data = wp_unslash( $_POST['blog'] );
 
+	// remove forward slashes from front and back of the site domain
+	$blog_data['domain'] = trim( $blog_data['domain'], '/' );
+	// ensure one forward slash is present in the front and back of the site path
+	$blog_data['path']   = trailingslashit( '/' . trim( $blog_data['path'], '/' ) );
+
 	if ( isset( $_POST['update_home_url'] ) && $_POST['update_home_url'] == 'update' ) {
-		$blog_address = esc_url_raw( $_POST['blog']['domain'] . $_POST['blog']['path'] );
+		$blog_address = esc_url_raw( $blog_data['domain'] . $blog_data['path'] );
 		if ( get_option( 'siteurl' ) != $blog_address )
 			update_option( 'siteurl', $blog_address );
 
@@ -62,7 +68,6 @@
 	delete_option( 'rewrite_rules' );
 
 	// update blogs table
-	$blog_data = wp_unslash( $_POST['blog'] );
 	$existing_details = get_blog_details( $id, false );
 	$blog_data_checkboxes = array( 'public', 'archived', 'spam', 'mature', 'deleted' );
 	foreach ( $blog_data_checkboxes as $c ) {
