install: fix bug #436 and small typo

Function check_htaccess() don't perform check if curl is not installed.
This was leading to wsod beacuse check_htaccess() uses fetch_url().
This commit is contained in:
root 2012-06-01 03:31:24 -04:00
parent bad66a1154
commit 1d1c50f6e3

29
mod/install.php Normal file → Executable file
View file

@ -184,15 +184,16 @@ function install_content(&$a) {
check_php($phpath, $checks); check_php($phpath, $checks);
check_htaccess($checks); check_htaccess($checks);
function check_passed($v, $c){ function check_passed($v, $c){
if ($c['required']) if ($c['required'])
$v = $v && $c['status']; $v = $v && $c['status'];
return $v; return $v;
} }
$checkspassed = array_reduce($checks, "check_passed", true); $checkspassed = array_reduce($checks, "check_passed", true);
$tpl = get_markup_template('install_checks.tpl'); $tpl = get_markup_template('install_checks.tpl');
$o .= replace_macros($tpl, array( $o .= replace_macros($tpl, array(
@ -381,6 +382,7 @@ function check_funcs(&$checks) {
check_add($ck_funcs, t('Apache mod_rewrite module'), true, true, ""); check_add($ck_funcs, t('Apache mod_rewrite module'), true, true, "");
} }
} }
if(! function_exists('curl_init')){ if(! function_exists('curl_init')){
$ck_funcs[0]['status']= false; $ck_funcs[0]['status']= false;
$ck_funcs[0]['help']= t('Error: libCURL PHP module required but not installed.'); $ck_funcs[0]['help']= t('Error: libCURL PHP module required but not installed.');
@ -421,21 +423,26 @@ function check_htconfig(&$checks) {
$help .= t('At the end of this procedure, we will give you a text to save in a file named .htconfig.php in your Friendica top folder.').EOL; $help .= t('At the end of this procedure, we will give you a text to save in a file named .htconfig.php in your Friendica top folder.').EOL;
$help .= t('You can alternatively skip this procedure and perform a manual installation. Please see the file "INSTALL.txt" for instructions.').EOL; $help .= t('You can alternatively skip this procedure and perform a manual installation. Please see the file "INSTALL.txt" for instructions.').EOL;
} }
check_add($checks, t('.htconfig.php is writable'), $status, false, $help); check_add($checks, t('.htconfig.php is writable'), $status, false, $help);
} }
function check_htaccess(&$checks) { function check_htaccess(&$checks) {
$a = get_app(); $a = get_app();
$status = true; $status = true;
$help = ""; $help = "";
$test = fetch_url($a->get_baseurl()."/install/testrewrite"); if (function_exists('curl_init')){
if ($test!="ok") { $test = fetch_url($a->get_baseurl()."/install/testrewrite");
$status = false; if ($test!="ok") {
$help = t('Url rewrite in .htconfig is not working. Check your server configuration.'); $status = false;
} $help = t('Url rewrite in .htaccess is not working. Check your server configuration.');
check_add($checks, t('Url rewrite is working'), $status, true, $help); }
check_add($checks, t('Url rewrite is working'), $status, true, $help);
} else {
// cannot check modrewrite if libcurl is not installed
}
} }