diff --git a/.htaccess b/.htaccess
index c32b182..c652b05 100644
--- a/.htaccess
+++ b/.htaccess
@@ -118,6 +118,9 @@ DirectoryIndex index.php index.html index.htm
   RewriteCond %{REQUEST_URI} !core
   RewriteRule ^ %1/core/%2 [L,QSA,R=301]
 
+  # Rewrite install.php during installation to see if mod_rewrite is working
+  RewriteRule ^core/install.php core/install.php?rewrite=ok [QSA,L]
+
   # Pass all requests not referring directly to files in the filesystem to
   # index.php.
   RewriteCond %{REQUEST_FILENAME} !-f
diff --git a/core/modules/system/system.install b/core/modules/system/system.install
index 8e7b534..d7b774a 100644
--- a/core/modules/system/system.install
+++ b/core/modules/system/system.install
@@ -17,6 +17,7 @@
  * Implements hook_requirements().
  */
 function system_requirements($phase) {
+  global $install_state;
   $requirements = array();
 
   // Report Drupal version
@@ -53,6 +54,13 @@ function system_requirements($phase) {
     'value' => $software,
   );
 
+  // Test Clean URL support
+  if ($phase == 'install' && $install_state['interactive'] && !isset($_GET['rewrite']) && strpos($software,'Apache') !== FALSE) {
+     $requirements['rewrite_module']['title'] = t('Clean URLs');
+     $requirements['rewrite_module']['value'] = t('Your system configuration does not currently appear to support this feature. The <a href="@link">handbook page on Clean URLs</a> has additional troubleshooting information. Drupal will not work properly without being able to rewrite URLs.', array('@link' => 'http://drupal.org/node/15365'));
+     $requirements['rewrite_module']['severity'] = REQUIREMENT_ERROR;
+   }
+
   // Test PHP version and show link to phpinfo() if it's available
   $phpversion = phpversion();
   if (function_exists('phpinfo')) {
