Skip to content
Extraits de code Groupes Projets
Valider 340ae1fc rédigé par Fil's avatar Fil
Parcourir les fichiers

Correction bug ecrire -> ecrire/

Plus d'éénements logés dans spip.log

On évite les timeout en faisant une seule grosse opération à la fois

Amélioration de l'écran "purger les données d'indexation", qui indique désoermais "Le moteur de recherche n'est pas activé. Les tables d'indexation du moteur sont vides. " etc.
parent cbab7d26
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -98,14 +98,24 @@ echo "<TR><TD BACKGROUND=''>"; ...@@ -98,14 +98,24 @@ echo "<TR><TD BACKGROUND=''>";
echo "<FONT FACE='Georgia,Garamond,Times,serif' SIZE=3>"; echo "<FONT FACE='Georgia,Garamond,Times,serif' SIZE=3>";
echo "\n<p align='justify'>Utilisez cette commande afin de vider les tables utilis&eacute;es echo "\n<p align='justify'>";
par le moteur de recherche int&eacute;gr&eacute; &agrave; SPIP. Cela permet de gagner de if (lire_meta('activer_moteur') == 'oui')
l'espace disque si vous avez d&eacute;sactiv&eacute; le moteur de recherche. Cela peut servir echo "<b>Le moteur de recherche est activ&eacute;.</b> Utilisez cette commande
&eacute;galement &agrave; r&eacute;indexer les documents au cas o&ugrave; vous avez restaur&eacute; une sauvegarde. si vous souhaitez proc&eacute;der &agrave; une r&eacute;indexation rapide (apr&egrave;s restauration
d'une sauvegarde par exemple). Notez que les documents modifi&eacute;s de
<p align='justify'>Notez que les documents modifi&eacute;s de fa&ccedil;on normale (depuis l'interface fa&ccedil;on normale (depuis l'interface SPIP) sont automatiquement
SPIP) sont automatiquement r&eacute;index&eacute;s, cette commande n'est donc utile que de fa&ccedil;on exceptionnelle."; r&eacute;index&eacute;s&nbsp;: cette commande n'est donc utile que de fa&ccedil;on exceptionnelle.";
else {
echo "<b>Le moteur de recherche n'est pas activ&eacute;.</b>";
$row = spip_fetch_array(spip_query("SELECT COUNT(*) AS cnt FROM spip_index_articles"));
if ($row['cnt'])
echo " Utilisez cette commande afin de vider les tables d'indexation utilis&eacute;es
par le moteur de recherche int&eacute;gr&eacute; &agrave; SPIP. Cela vous permettra
de gagner de l'espace disque.";
else
echo " Les tables d'indexation du moteur sont vides.";
}
echo "\n<FORM ACTION='admin_vider.php3' METHOD='post'>"; echo "\n<FORM ACTION='admin_vider.php3' METHOD='post'>";
......
...@@ -215,6 +215,7 @@ function calculer_n_referers($nb_referers) { ...@@ -215,6 +215,7 @@ function calculer_n_referers($nb_referers) {
function calculer_referers() { function calculer_referers() {
spip_log("analyse referers");
$encore = calculer_n_referers(100); $encore = calculer_n_referers(100);
if ($encore) { if ($encore) {
include_ecrire("inc_meta.php3"); include_ecrire("inc_meta.php3");
...@@ -233,6 +234,7 @@ function calculer_referers() { ...@@ -233,6 +234,7 @@ function calculer_referers() {
// //
function calculer_visites($date = "") { function calculer_visites($date = "") {
spip_log("analyse visites");
// calculer les popularites avant d'effacer les donnees // calculer les popularites avant d'effacer les donnees
calculer_popularites(); calculer_popularites();
...@@ -290,6 +292,8 @@ function calculer_visites($date = "") { ...@@ -290,6 +292,8 @@ function calculer_visites($date = "") {
// //
function calculer_popularites() { function calculer_popularites() {
spip_log("analyse popularites");
$date = lire_meta('date_stats_popularite'); $date = lire_meta('date_stats_popularite');
include_ecrire("inc_meta.php3"); include_ecrire("inc_meta.php3");
ecrire_meta("date_stats_popularite", time()); ecrire_meta("date_stats_popularite", time());
......
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -155,6 +155,7 @@ if (file_exists($chemin_cache)) { ...@@ -155,6 +155,7 @@ if (file_exists($chemin_cache)) {
if ($var_recherche) { if ($var_recherche) {
fin_surligne($var_recherche, $mode_surligne); fin_surligne($var_recherche, $mode_surligne);
$timeout = true; // risque timeout
} }
...@@ -193,8 +194,8 @@ if (!file_exists("CACHE/.htaccess")) { ...@@ -193,8 +194,8 @@ if (!file_exists("CACHE/.htaccess")) {
if (lire_meta('activer_moteur') == 'oui') { if (lire_meta('activer_moteur') == 'oui') {
$fichier_index = 'ecrire/data/.index'; $fichier_index = 'ecrire/data/.index';
if ($db_ok) { if ($db_ok) {
include_ecrire("inc_texte.php3"); // include_ecrire("inc_texte.php3");
include_ecrire("inc_filtres.php3"); // include_ecrire("inc_filtres.php3");
include_ecrire("inc_index.php3"); include_ecrire("inc_index.php3");
$s = ''; $s = '';
if ($id_article AND !deja_indexe('article', $id_article)) if ($id_article AND !deja_indexe('article', $id_article))
...@@ -215,7 +216,7 @@ if (lire_meta('activer_moteur') == 'oui') { ...@@ -215,7 +216,7 @@ if (lire_meta('activer_moteur') == 'oui') {
} }
if ($use_cache AND file_exists($fichier_index) AND $size = filesize($fichier_index)) { if ($use_cache AND file_exists($fichier_index) AND $size = filesize($fichier_index)) {
include_ecrire("inc_connect.php3"); include_ecrire("inc_connect.php3");
if ($db_ok) { if (!$timeout AND $db_ok) {
include_ecrire("inc_texte.php3"); include_ecrire("inc_texte.php3");
include_ecrire("inc_filtres.php3"); include_ecrire("inc_filtres.php3");
include_ecrire("inc_index.php3"); include_ecrire("inc_index.php3");
...@@ -226,8 +227,10 @@ if (lire_meta('activer_moteur') == 'oui') { ...@@ -226,8 +227,10 @@ if (lire_meta('activer_moteur') == 'oui') {
$f = fopen($fichier_index, 'w'); $f = fopen($fichier_index, 'w');
fwrite($f, $suite); fwrite($f, $suite);
fclose($f); fclose($f);
$s = explode(' ', $s); $s = explode(' ', trim($s));
spip_log("indexation $s[0] $s[1]");
indexer_objet($s[0], $s[1], false); indexer_objet($s[0], $s[1], false);
$timeout = true;
} }
} }
} }
...@@ -239,8 +242,9 @@ if (lire_meta('activer_moteur') == 'oui') { ...@@ -239,8 +242,9 @@ if (lire_meta('activer_moteur') == 'oui') {
// Se declenche une fois par jour quand le cache n'est pas recalcule // Se declenche une fois par jour quand le cache n'est pas recalcule
// //
if ($use_cache && file_exists('CACHE/.purge2') && $db_ok) { if (!$timeout AND $use_cache AND file_exists('CACHE/.purge2') AND $db_ok) {
unlink('CACHE/.purge2'); unlink('CACHE/.purge2');
spip_log("purge cache niveau 2");
$query = "SELECT fichier FROM spip_forum_cache WHERE maj < DATE_SUB(NOW(), INTERVAL 14 DAY)"; $query = "SELECT fichier FROM spip_forum_cache WHERE maj < DATE_SUB(NOW(), INTERVAL 14 DAY)";
$result = spip_query($query); $result = spip_query($query);
unset($fichiers); unset($fichiers);
...@@ -252,14 +256,17 @@ if ($use_cache && file_exists('CACHE/.purge2') && $db_ok) { ...@@ -252,14 +256,17 @@ if ($use_cache && file_exists('CACHE/.purge2') && $db_ok) {
$query = "DELETE FROM spip_forum_cache WHERE fichier IN (".join(',', $fichiers).")"; $query = "DELETE FROM spip_forum_cache WHERE fichier IN (".join(',', $fichiers).")";
spip_query($query); spip_query($query);
} }
$timeout = true;
} }
if ($use_cache && file_exists('CACHE/.purge')) { if (!$timeout AND $use_cache AND file_exists('CACHE/.purge')) {
unlink('CACHE/.purge'); unlink('CACHE/.purge');
spip_log("purge cache niveau 1");
$f = fopen('CACHE/.purge2', 'w'); $f = fopen('CACHE/.purge2', 'w');
fclose($f); fclose($f);
include_local ("inc-cache.php3"); include_local ("inc-cache.php3");
purger_repertoire('CACHE', 14 * 24 * 3600); purger_repertoire('CACHE', 14 * 24 * 3600);
$timeout = true;
} }
...@@ -281,8 +288,7 @@ if ($admin_ok AND !$flag_preserver AND !$flag_boutons_admin) { ...@@ -281,8 +288,7 @@ if ($admin_ok AND !$flag_preserver AND !$flag_boutons_admin) {
// Mise a jour d'un (ou de zero) site syndique // Mise a jour d'un (ou de zero) site syndique
// //
if ($db_ok AND lire_meta("activer_syndic") != "non") { if (!$timeout AND $db_ok AND lire_meta("activer_syndic") != "non") {
flush();
include_ecrire("inc_texte.php3"); include_ecrire("inc_texte.php3");
include_ecrire("inc_filtres.php3"); include_ecrire("inc_filtres.php3");
include_ecrire("inc_sites.php3"); include_ecrire("inc_sites.php3");
...@@ -290,6 +296,7 @@ if ($db_ok AND lire_meta("activer_syndic") != "non") { ...@@ -290,6 +296,7 @@ if ($db_ok AND lire_meta("activer_syndic") != "non") {
executer_une_syndication(); executer_une_syndication();
executer_une_indexation_syndic(); executer_une_indexation_syndic();
$timeout = true;
} }
// //
...@@ -307,7 +314,7 @@ if (lire_meta("activer_statistiques") != "non") { ...@@ -307,7 +314,7 @@ if (lire_meta("activer_statistiques") != "non") {
// //
$majnouv = lire_meta('majnouv'); $majnouv = lire_meta('majnouv');
if (lire_meta('quoi_de_neuf') == 'oui' AND $jours_neuf = lire_meta('jours_neuf') if (!$timeout AND lire_meta('quoi_de_neuf') == 'oui' AND $jours_neuf = lire_meta('jours_neuf')
AND $adresse_neuf = lire_meta('adresse_neuf') AND (time() - $majnouv) > 3600 * 24 * $jours_neuf) { AND $adresse_neuf = lire_meta('adresse_neuf') AND (time() - $majnouv) > 3600 * 24 * $jours_neuf) {
include_ecrire('inc_connect.php3'); include_ecrire('inc_connect.php3');
if ($db_ok) { if ($db_ok) {
...@@ -344,6 +351,7 @@ if (lire_meta('quoi_de_neuf') == 'oui' AND $jours_neuf = lire_meta('jours_neuf') ...@@ -344,6 +351,7 @@ if (lire_meta('quoi_de_neuf') == 'oui' AND $jours_neuf = lire_meta('jours_neuf')
} else } else
spip_log("envoi mail nouveautes : pas de nouveautes"); spip_log("envoi mail nouveautes : pas de nouveautes");
} }
$timeout = true;
} }
?> ?>
...@@ -6,12 +6,8 @@ if (defined("_INC_STATS")) return; ...@@ -6,12 +6,8 @@ if (defined("_INC_STATS")) return;
define("_INC_STATS", "1"); define("_INC_STATS", "1");
function ecrire_stats() { function ecrire_stats() {
global $id_article, $id_breve, $id_rubrique, $admin_ok; global $id_article, $id_breve, $id_rubrique, $admin_ok, $timeout;
include_ecrire("inc_connect.php3");
if (!$GLOBALS['db_ok'])
return;
// Essai de fichier de log simplifie
$log_ip = $GLOBALS['REMOTE_ADDR']; $log_ip = $GLOBALS['REMOTE_ADDR'];
if ($id_rubrique > 0) { if ($id_rubrique > 0) {
$log_type = "rubrique"; $log_type = "rubrique";
...@@ -36,7 +32,34 @@ function ecrire_stats() { ...@@ -36,7 +32,34 @@ function ecrire_stats() {
} }
else return; else return;
//
// Loguer la visite dans la base si possible
//
if ($log_type != "autre") {
$query = "INSERT IGNORE INTO spip_visites_temp (ip, type, id_objet) ".
"VALUES ($log_ip, '$log_type', $log_id_num)";
spip_query($query);
}
if (lire_meta('activer_statistiques_ref') == 'oui') {
$url_site_spip = lire_meta('adresse_site');
$url_site_spip = eregi_replace("^(https?|ftp://)www\.", "\\1(www)?\.", $url_site_spip);
$log_referer = $GLOBALS['HTTP_REFERER'];
if (eregi($url_site_spip, $log_referer) AND !$GLOBALS['var_recherche']) $log_referer = "";
if ($log_referer) {
$referer_md5 = '0x'.substr(md5($log_referer), 0, 16);
$query = "INSERT IGNORE INTO spip_referers_temp (ip, referer, referer_md5, type, id_objet) ".
"VALUES ($log_ip, '$log_referer', $referer_md5, '$log_type', $log_id_num)";
spip_query($query);
}
}
//
// Archivage des visites temporaires // Archivage des visites temporaires
//
if ($timeout) return;
$date = date("Y-m-d"); $date = date("Y-m-d");
$last_date = lire_meta("date_statistiques"); $last_date = lire_meta("date_statistiques");
...@@ -46,6 +69,7 @@ function ecrire_stats() { ...@@ -46,6 +69,7 @@ function ecrire_stats() {
ecrire_meta('calculer_referers_now', 'non'); ecrire_meta('calculer_referers_now', 'non');
ecrire_metas(); ecrire_metas();
calculer_referers(); calculer_referers();
$timeout = true;
} else if ($date != $last_date) { } else if ($date != $last_date) {
include_ecrire("inc_meta.php3"); include_ecrire("inc_meta.php3");
include_ecrire("inc_statistiques.php3"); include_ecrire("inc_statistiques.php3");
...@@ -60,35 +84,15 @@ function ecrire_stats() { ...@@ -60,35 +84,15 @@ function ecrire_stats() {
ecrire_meta('calculer_referers_now','oui'); ecrire_meta('calculer_referers_now','oui');
ecrire_metas(); ecrire_metas();
} }
$timeout = true;
} }
// Log simple des visites
if ($log_type != "autre") {
$query = "INSERT IGNORE INTO spip_visites_temp (ip, type, id_objet) ".
"VALUES ($log_ip, '$log_type', $log_id_num)";
spip_query($query);
}
// Log complexe (referers)
if (lire_meta('activer_statistiques_ref') == 'oui') {
$url_site_spip = lire_meta('adresse_site');
$url_site_spip = eregi_replace("^(https?|ftp://)www\.", "\\1(www)?\.", $url_site_spip);
$log_referer = $GLOBALS['HTTP_REFERER'];
if (eregi($url_site_spip, $log_referer) AND !$GLOBALS['var_recherche']) $log_referer = "";
if ($log_referer) {
$referer_md5 = '0x'.substr(md5($log_referer), 0, 16);
$query = "INSERT IGNORE INTO spip_referers_temp (ip, referer, referer_md5, type, id_objet) ".
"VALUES ($log_ip, '$log_referer', $referer_md5, '$log_type', $log_id_num)";
spip_query($query);
}
}
// popularite, mise a jour dix minutes // popularite, mise a jour dix minutes
$date_popularite = lire_meta('date_stats_popularite'); $date_popularite = lire_meta('date_stats_popularite');
if ((time() - $date_popularite) > 600) { if (!$timeout AND ((time() - $date_popularite) > 600)) {
include_ecrire("inc_statistiques.php3"); include_ecrire("inc_statistiques.php3");
calculer_popularites(); calculer_popularites();
$timeout = true;
} }
...@@ -100,7 +104,6 @@ function ecrire_stats() { ...@@ -100,7 +104,6 @@ function ecrire_stats() {
ecrire_meta('calculer_referers_now', 'oui'); ecrire_meta('calculer_referers_now', 'oui');
ecrire_metas(); ecrire_metas();
} }
} }
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -177,6 +177,10 @@ ...@@ -177,6 +177,10 @@
[<div class="chapo">(#TEXTE)</div>] [<div class="chapo">(#TEXTE)</div>]
[<div class="notes">(#NOTES)</div>] [<div class="notes">(#NOTES)</div>]
<BOUCLE_documents_joints(DOCUMENTS) {id_rubrique} {mode=document} {doublons} {"<br>"}>
[(#LOGO_DOCUMENT|#URL_DOCUMENT)][<br>(#TITRE)][ - (#DESCRIPTIF)]
</BOUCLE_documents_joints>
<br>
<!-- Articles recents --> <!-- Articles recents -->
......
...@@ -36,7 +36,7 @@ ...@@ -36,7 +36,7 @@
<a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a> <a href="resume.php3" title="Articles populaires et derniers messages de forum">En r&eacute;sum&eacute;</a>
</li> </li>
<li class="menu-item"> <li class="menu-item">
<a href="ecrire" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a> <a href="ecrire/" title="Acc&eacute;der &agrave; l'espace r&eacute;serv&eacute; aux r&eacute;dacteurs">Administration</a>
</li> </li>
</ul> </ul>
</div> </div>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter