2008-05-21 07:59:27 +02:00
< ? php
2008-05-25 17:50:15 +02:00
/**
* Bootstrap file for setting the ABSPATH constant
* and loading the wp - config . php file . The wp - config . php
* file will then load the wp - settings . php file , which
* will then set up the WordPress environment .
*
* If the wp - config . php file is not found then an error
* will be displayed asking the visitor to set up the
* wp - config . php file .
*
2008-06-13 21:39:04 +02:00
* Will also search for wp - config . php in WordPress ' parent
* directory to allow the WordPress directory to remain
* untouched .
2008-05-25 17:50:15 +02:00
*
2011-06-29 18:50:07 +02:00
* @ internal This file must be parsable by PHP4 .
*
2008-05-25 17:50:15 +02:00
* @ package WordPress
*/
2012-04-11 22:09:17 +02:00
/** Define ABSPATH as this file's directory */
2008-05-21 07:59:27 +02:00
define ( 'ABSPATH' , dirname ( __FILE__ ) . '/' );
2011-04-11 20:51:52 +02:00
error_reporting ( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR );
2008-06-11 19:27:28 +02:00
2015-02-14 12:38:41 +01:00
/*
* If wp - config . php exists in the WordPress root , or if it exists in the root and wp - settings . php
* doesn ' t , load wp - config . php . The secondary check for wp - settings . php has the added benefit
* of avoiding cases where the current directory is a nested installation , e . g . / is WordPress ( a )
* and / blog / is WordPress ( b ) .
*
* If neither set of conditions is true , initiate loading the setup process .
*/
2008-05-21 07:59:27 +02:00
if ( file_exists ( ABSPATH . 'wp-config.php' ) ) {
2008-05-25 17:50:15 +02:00
/** The config file resides in ABSPATH */
2008-05-21 07:59:27 +02:00
require_once ( ABSPATH . 'wp-config.php' );
2015-10-06 16:19:17 +02:00
} elseif ( @ file_exists ( dirname ( ABSPATH ) . '/wp-config.php' ) && ! @ file_exists ( dirname ( ABSPATH ) . '/wp-settings.php' ) ) {
2008-05-21 07:59:27 +02:00
2012-04-11 22:09:17 +02:00
/** The config file resides one level above ABSPATH but is not part of another install */
2015-10-06 16:19:17 +02:00
require_once ( dirname ( ABSPATH ) . '/wp-config.php' );
2008-05-21 07:59:27 +02:00
} else {
// A config file doesn't exist
2011-12-29 19:45:01 +01:00
define ( 'WPINC' , 'wp-includes' );
2012-01-26 21:34:27 +01:00
require_once ( ABSPATH . WPINC . '/load.php' );
2012-09-04 04:38:37 +02:00
2013-09-12 07:12:51 +02:00
// Standardize $_SERVER variables across setups.
wp_fix_server_vars ();
2012-09-04 04:38:37 +02:00
require_once ( ABSPATH . WPINC . '/functions.php' );
2011-06-29 18:46:46 +02:00
2013-09-12 08:56:20 +02:00
$path = wp_guess_url () . '/wp-admin/setup-config.php' ;
2013-09-12 07:12:51 +02:00
2014-07-07 18:41:43 +02:00
/*
* We 're going to redirect to setup-config.php. While this shouldn' t result
2014-07-03 21:56:37 +02:00
* in an infinite loop , that 's a silly thing to assume, don' t you think ? If
* we ' re traveling in circles , our last - ditch effort is " Need more help? "
*/
if ( false === strpos ( $_SERVER [ 'REQUEST_URI' ], 'setup-config' ) ) {
header ( 'Location: ' . $path );
exit ;
}
define ( 'WP_CONTENT_DIR' , ABSPATH . 'wp-content' );
require_once ( ABSPATH . WPINC . '/version.php' );
wp_check_php_mysql_versions ();
wp_load_translations_early ();
2008-05-21 07:59:27 +02:00
// Die with an error message
2012-04-22 10:05:17 +02:00
$die = __ ( " There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started. " ) . '</p>' ;
2015-04-12 23:28:58 +02:00
$die .= '<p>' . __ ( " Need more help? <a href='https://codex.wordpress.org/Editing_wp-config.php'>We got it</a>. " ) . '</p>' ;
2012-01-26 21:34:27 +01:00
$die .= '<p>' . __ ( " You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file. " ) . '</p>' ;
2012-10-26 21:40:39 +02:00
$die .= '<p><a href="' . $path . '" class="button button-large">' . __ ( " Create a Configuration File " ) . '</a>' ;
2008-05-21 07:59:27 +02:00
2012-01-26 21:34:27 +01:00
wp_die ( $die , __ ( 'WordPress › Error' ) );
2008-05-21 07:59:27 +02:00
}