85 lines
2.5 KiB
PHP
85 lines
2.5 KiB
PHP
|
<?php
|
||
|
|
||
|
/***************************************************************************\
|
||
|
* SPIP, Systeme de publication pour l'internet *
|
||
|
* *
|
||
|
* Copyright (c) 2001-2019 *
|
||
|
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
|
||
|
* *
|
||
|
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
|
||
|
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
|
||
|
\***************************************************************************/
|
||
|
|
||
|
if (!defined('_ECRIRE_INC_VERSION')) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
include_spip('inc/headers');
|
||
|
include_spip('inc/acces');
|
||
|
|
||
|
// Mise en place des fichiers de configuration si ce n'est fait
|
||
|
|
||
|
// http://code.spip.net/@install_etape_fin_dist
|
||
|
function install_etape_fin_dist() {
|
||
|
ecrire_acces();
|
||
|
|
||
|
$f = str_replace(_FILE_TMP_SUFFIX, '.php', _FILE_CHMOD_TMP);
|
||
|
if (file_exists(_FILE_CHMOD_TMP)) {
|
||
|
if (!@rename(_FILE_CHMOD_TMP, $f)) {
|
||
|
if (@copy(_FILE_CHMOD_TMP, $f)) {
|
||
|
spip_unlink(_FILE_CHMOD_TMP);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$f = str_replace(_FILE_TMP_SUFFIX, '.php', _FILE_CONNECT_TMP);
|
||
|
if (file_exists(_FILE_CONNECT_TMP)) {
|
||
|
spip_log("renomme $f");
|
||
|
if (!@rename(_FILE_CONNECT_TMP, $f)) {
|
||
|
if (@copy(_FILE_CONNECT_TMP, $f)) {
|
||
|
@spip_unlink(_FILE_CONNECT_TMP);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// creer le repertoire cache, qui sert partout !
|
||
|
// deja fait en etape 4 en principe, on garde au cas ou
|
||
|
if (!@file_exists(_DIR_CACHE)) {
|
||
|
$rep = preg_replace(',' . _DIR_TMP . ',', '', _DIR_CACHE);
|
||
|
$rep = sous_repertoire(_DIR_TMP, $rep, true, true);
|
||
|
}
|
||
|
|
||
|
// Verifier la securite des htaccess
|
||
|
// Si elle ne fonctionne pas, prevenir
|
||
|
$msg = install_verifier_htaccess();
|
||
|
if ($msg) {
|
||
|
$cible = _T('public:accueil_site');
|
||
|
$cible = generer_form_ecrire('accueil', '', '', $cible);
|
||
|
echo minipres('AUTO', $msg . $cible);
|
||
|
// ok, deboucher dans l'espace prive
|
||
|
} else {
|
||
|
redirige_url_ecrire('accueil');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function install_verifier_htaccess() {
|
||
|
if (verifier_htaccess(_DIR_TMP, true)
|
||
|
and verifier_htaccess(_DIR_CONNECT, true)
|
||
|
) {
|
||
|
return '';
|
||
|
}
|
||
|
|
||
|
$titre = _T('htaccess_inoperant');
|
||
|
|
||
|
$averti = _T(
|
||
|
'htaccess_a_simuler',
|
||
|
array(
|
||
|
'htaccess' => '<tt>' . _ACCESS_FILE_NAME . '</tt>',
|
||
|
'constantes' => '<tt>_DIR_TMP & _DIR_CONNECT</tt>',
|
||
|
'document_root' => '<tt>' . $_SERVER['DOCUMENT_ROOT'] . '</tt>'
|
||
|
)
|
||
|
);
|
||
|
|
||
|
return "<div class='error'><h3>$titre</h3><p>$averti</p></div>";
|
||
|
}
|