Index: wp-includes/ms-load.php
===================================================================
--- wp-includes/ms-load.php	(revision 12808)
+++ wp-includes/ms-load.php	(working copy)
@@ -21,7 +21,7 @@
 
 // Fix empty PHP_SELF
 $PHP_SELF = $_SERVER['PHP_SELF'];
-if ( empty($PHP_SELF) || ( empty($PHP_SELF) && constant( 'VHOST' ) == 'no' && $current_blog->path != '/' ) )
+if ( empty($PHP_SELF) || ( empty($PHP_SELF) && !is_subdomain_install() && $current_blog->path != '/' ) )
 	$_SERVER['PHP_SELF'] = $PHP_SELF = preg_replace("/(\?.*)?$/",'',$_SERVER["REQUEST_URI"]);
 
 wp_cache_init(); // need to init cache again after blog_id is set
Index: wp-includes/ms-settings.php
===================================================================
--- wp-includes/ms-settings.php	(revision 12808)
+++ wp-includes/ms-settings.php	(working copy)
@@ -1,14 +1,16 @@
 <?php
 
 /**
- * Whether a subdomain configuration is enabled
+ * Whether a subdomain configuration is enabled.
  *
+ * Interprets <code>define('VHOST', 'no')</code> as false for backwards compatability.
+ *
  * @since 3.0
  *
  * @return bool True if subdomain configuration is enabled, false otherwise.
  */
 function is_subdomain_install() {
-	if ( defined('VHOST') && VHOST == 'yes' )
+	if ( defined('VHOST') && VHOST && VHOST != 'no' )
 		return true;
 
 	return false;
Index: wp-admin/includes/schema.php
===================================================================
--- wp-admin/includes/schema.php	(revision 12808)
+++ wp-admin/includes/schema.php	(working copy)
@@ -619,7 +619,7 @@
  *
  * @param int $network_id id of network to populate
  */
-function populate_network( $network_id = 1, $domain = '', $email = '', $site_name = '', $path = '/', $vhost = 'no' ) {
+function populate_network( $network_id = 1, $domain = '', $email = '', $site_name = '', $path = '/', $vhost = false ) {
 	global $wpdb, $current_site, $wp_version, $wp_db_version, $wp_rewrite;
 
 	$msg = '';
@@ -701,14 +701,14 @@
 		update_usermeta( $site_user->ID, 'primary_blog', 1 );
 	}
 
-	if ( $vhost == 'yes' )
+	if ( $vhost && $vhost != 'no' ) // 'no' for compat
 		update_option( 'permalink_structure', '/%year%/%monthnum%/%day%/%postname%/');
 	else
 		update_option( 'permalink_structure', '/blog/%year%/%monthnum%/%day%/%postname%/');
 
 	$wp_rewrite->flush_rules();
 
-	if ( $vhost == 'yes' ) {
+	if ( $vhost && $vhost != 'no' ) { // 'no' for compat
 		$vhost_ok = false;
 		$hostname = substr( md5( time() ), 0, 6 ) . '.' . $domain; // Very random hostname!
 		$page = wp_remote_get( 'http://' . $hostname, array( 'timeout' => 5, 'httpversion' => '1.1' ) );
Index: wp-admin/includes/wp-config.ms
===================================================================
--- wp-admin/includes/wp-config.ms	(revision 12808)
+++ wp-admin/includes/wp-config.ms	(working copy)
@@ -93,7 +93,7 @@
 // remember to change WP_CONTENT too.
 // define( "UPLOADBLOGSDIR", "fileserver" );
 
-// If VHOST is 'yes' uncomment and set this to a URL to redirect if a blog does not exist or is a 404 on the main blog. (Useful if signup is disabled)
+// If VHOST is true uncomment and set this to a URL to redirect if a blog does not exist or is a 404 on the main blog. (Useful if signup is disabled)
 // For example, the browser will redirect to http://examples.com/ for the following: define( 'NOBLOGREDIRECT', 'http://example.com/' );
 // Set this value to %siteurl% to redirect to the root of the site
 // define( 'NOBLOGREDIRECT', '' );
Index: wp-admin/options-network.php
===================================================================
--- wp-admin/options-network.php	(revision 12808)
+++ wp-admin/options-network.php	(working copy)
@@ -142,8 +142,8 @@
 		<p><strong>Note</strong> It looks like <code>mod_rewrite</code> is not installed.</p>
 		<?php } ?>
 		<p class="blog-address">
-			<label><input type='radio' name='vhost' value='yes' <?php if( $rewrite_enabled ) echo 'checked="checked"'; ?> /> Sub-domains (like <code>blog1.example.com</code>)</label><br />
-			<label><input type='radio' name='vhost' value='no' <?php if( !$rewrite_enabled ) echo 'checked="checked"'; ?> /> Sub-directories (like <code>example.com/blog1</code>)</label>
+			<label><input type='radio' name='vhost' value='1' <?php if( $rewrite_enabled ) echo 'checked="checked"'; ?> /> Sub-domains (like <code>blog1.example.com</code>)</label><br />
+			<label><input type='radio' name='vhost' value='0' <?php if( !$rewrite_enabled ) echo 'checked="checked"'; ?> /> Sub-directories (like <code>example.com/blog1</code>)</label>
 		</p>
 
 		<h2>Server Address</h2>
@@ -197,7 +197,7 @@
 function step2_config() {
 	global $base, $wpdb, $vhost;
 
-	$vhost   = stripslashes($_POST['vhost' ]);
+	$vhost   = (bool) stripslashes($_POST['vhost' ]);
 	$prefix  = $wpdb->base_prefix;
 
 	$config_sample = ABSPATH . 'wp-admin/includes/wp-config.ms';
@@ -224,7 +224,7 @@
 				$output = str_replace("localhost", DB_HOST, $line);
 				break;
 			case "define('VHOST',":
-				$output = str_replace("VHOSTSETTING", $vhost, $line);
+				$output = str_replace("'VHOSTSETTING'", $vhost ? 'true' : 'false', $line);
 				break;
 			case '$table_prefix  =':
 				$output = str_replace('wp_', $prefix, $line);
@@ -285,7 +285,7 @@
 		// create network tables
 		$domain = get_clean_basedomain();
 		install_network();
-		populate_network( 1, $domain, sanitize_email( $_POST[ 'email' ] ), $_POST[ 'weblog_title' ], $base, $_POST[ 'vhost' ] );
+		populate_network( 1, $domain, sanitize_email( $_POST[ 'email' ] ), $_POST[ 'weblog_title' ], $base, (bool) $_POST[ 'vhost' ] );
 		// create wp-config.php / htaccess
 		step2();
 	break;
