Index: wp-admin/includes/plugin.php
===================================================================
--- wp-admin/includes/plugin.php	(revision 23972)
+++ wp-admin/includes/plugin.php	(working copy)
@@ -417,6 +417,8 @@
 		$dropins['sunrise.php'       ] = array( __( 'Executed before Multisite is loaded.' ), 'SUNRISE' ); // SUNRISE
 		$dropins['blog-deleted.php'  ] = array( __( 'Custom site deleted message.'   ), true ); // auto on deleted blog
 		$dropins['blog-inactive.php' ] = array( __( 'Custom site inactive message.'  ), true ); // auto on inactive blog
+		$dropins['blog-spam.php'     ] = array( __( 'Custom site spam message.' ), true ); // auto on spammed blog
+		$dropins['blog-archived.php' ] = array( __( 'Custom site archived message.' ), true ); // auto on archived blog
 		$dropins['blog-suspended.php'] = array( __( 'Custom site suspended message.' ), true ); // auto on archived or spammed blog
 	}
 
Index: wp-includes/ms-load.php
===================================================================
--- wp-includes/ms-load.php	(revision 23972)
+++ wp-includes/ms-load.php	(working copy)
@@ -63,8 +63,8 @@
  * Dies with a default message if the blog does not pass the check.
  *
  * To change the default message when a blog does not pass the check,
- * use the wp-content/blog-deleted.php, blog-inactive.php and
- * blog-suspended.php drop-ins.
+ * use the wp-content/blog-deleted.php, blog-inactive.php, blog-spam.php,
+ * blog-archived.php and blog-suspended.php drop-ins.
  *
  * @return bool|string Returns true on success, or drop-in file to include.
  */
@@ -97,7 +97,11 @@
 	}
 
 	if ( $blog->archived == '1' || $blog->spam == '1' ) {
-		if ( file_exists( WP_CONTENT_DIR . '/blog-suspended.php' ) )
+		if ( $blog->spam == '1' && file_exists( WP_CONTENT_DIR . '/blog-spam.php' ) )
+			return WP_CONTENT_DIR . '/blog-spam.php';
+		else if ( $blog->archived == '1' && file_exists( WP_CONTENT_DIR . '/blog-archived.php' ) )
+			return WP_CONTENT_DIR . '/blog-archived.php';
+		else if ( file_exists( WP_CONTENT_DIR . '/blog-suspended.php' ) )
 			return WP_CONTENT_DIR . '/blog-suspended.php';
 		else
 			wp_die( __( 'This site has been archived or suspended.' ), '', array( 'response' => 410 ) );
