Script anti-aspirateur de site

Rédigé par adm - 07 juin 2016

 Interdire les aspirateurs et sites indésirables 2 

Outils pour webmaster. Trucs et astuces en code HTML, JavaScript, PHP : améliorer son site internet

Descriptif : nous allons voir ici un script permettant d'interdire les aspirateurs et sites indésirables pour ceux qui souhaiteraient travailler en PHP.
Les remarques générales de la première page restent valables et doivent être étudiées avec attention.

Mise en oeuvre : si vous pouvez utiliser la fonction RewriteRule sur votre serveur, suivez la procédure de la première page pour piéger les aspirateurs. Si cette fonction n'est pas disponible, renommez piege.php, ci-dessous, en nolink.php afin de capturer l'aspirateur directement lorsqu'il suivra le lien non-cliquable. Vous aurez pris soin de changer la ligne :

<a href="nolink.htm" style="color: black; text-decoration: none; background: #FFEBCD" onclick="return false;">?</a>

dans toutes vos pages HTML contenant ce lien-piège en :

<a href="nolink.php" style="color: black; text-decoration: none; background: #FFEBCD" onclick="return false;">?</a>

Nota : l'inconvénient de ce système, si vous ne pouvez avoir la fonction RewriteRule,c'est que vous ne piégez que très peu d'aspirateurs puisque le principe de la capture dans la page précédente est basé sur l'absence de page-lien-suivit et une redirection par .htaccess plutôt que par le nom de l'aspirateur.

Le fonctionnement : comme dans la première page, l'aspirateur de site suivra le lien non-cliquable qui l'enverra sur le fichier piege.php.
- Celui-ci capturera tous les renseignements concernant l'indésirable et notamment son adresse IP.
- Il vous préviendra par mail de cette visite, à condition que votre hébergeur vous autorise la fonction mail(), et affichera une page d'avertissement au visiteur.
- Il ouvrira ensuite le fichier .htaccess et y inscrira l'IP à bannir en haut de fichier.
- Lors du prochain passage sur le fichier .htaccess, le visiteur se retrouvera bloqué.

LE FICHIER piege.php
Sélectionnez le code ci-dessous (copie automatique dans le presse-papiers) et collez-le dans NotePad.
Vérifiez que vous n'avez pas des retours à la ligne (Ctrl-M) mais bien des retours chariots (visibles dans WORD) : ¶  et qu'il n'y ait pas d'espaces en bout de lignes.

Sauvegardez-le sous le nom piege.php et transférez-le sur votre site en ASCII par votre client FTP à la racine de votre site. Donnez-lui les droits par un CHMOD 644.

Dans .htaccess écrivez en tout début de fichier :

<Files ~ "^.*$">
order allow,deny
allow from all
deny from env=ban
</Files>

Le fichier .htaccess a, en principe, un CHMOD de 644. Suivant la configuration de votre hébergeur, il se peut que piege.cgi ne puisse y écrire dedans. Mettez un CHMOD de 776 ou tout autre CHMOD qui garantira le plus possible la protection du fichier.
Pour empêcher la lecture de .htaccess introduisez en tout début de fichier :

SetEnvIfNoCase Request_URI \.ht(access|passwd)$ ban

Ce qui donnera, combiné au script précédent :

SetEnvIfNoCase Request_URI \.ht(access|passwd)$ ban
<Files ~ "^.*$">
order allow,deny
allow from all
deny from env=ban
</Files>

Faites des essais en vous piégeant vous-même afin de déterminer si votre IP s'inscrit bien en début de fichier.

Remarque : les aspirateurs de sites ne sont pas forcément configurés d'origine pour suivre des liens PHP.

 

Cet article est en provenance d'un site qui m'avais apporté bcp au début à savoir :

-http://www.toulouse-renaissance.net/ et qui a disparu de notre toile aujourd'hui.

Classé dans : phpWeb, - Mots clés : aucun - aucun commentaire

Connaitre son chemin absolut en PHP. Méthode 2

Rédigé par adm - 04 mars 2014

Vous êtes ur un hébergement mutualisé et pour un script ou une ligne de code vous avez besoin de connaitre le chemin absolut de votre hébergement?

 

nous vous avons déjà donné une méthode, maintenant en voici une seconde

 

C'est simple,

 

Réaliser un petit fichier .php par exemple chemin.php

insérer ce code à l'intérieur

<?php
echo "doc root : ".$_SERVER["DOCUMENT_ROOT"];
?>

Et appeler ce fichier par l'url de votre naviguateur

 

http://www.votresite.com/chemin.php

Classé dans : php, - Mots clés : chemin absolut - aucun commentaire

OSCLASS - astuces

Rédigé par adm - 11 octobre 2013

Une des expériences actuelle est d'installer OSCLASS, script php de petites annonces.

Certains points ne fonctionne pas à prioris

1) envoi des mails.

Pour que l'envoi des mails se fassent il faut configurer votre serveur de messagerie dans le script

Voici l'exemple sur un mutu OVH.

Nom de l'hôte : ns0.ovh.net

Mail from :

Name from : votre nom

Numéro de port du serveur : 587

Nom d'utilisateur :

Mot de passe : mot_de_passe_compte_messagerie

(NB vous devez créer une boite mail via votre manager ovh)

Chiffrement : laisser vide !!!

a cocher ----> SMTP Activer l'authentification SMTP
 
 
NE PAS COCHER ------> POP Utiliser POP plutôt que SMTP

2) upload d'images

l'upload ne fonctionne pas sur du mutu..... pour le faire fonctionner

allez dans le fichier
dans oc-includes/osclass/ItemActions.php

supprimer les lignes suivantes ou mettez les en commentaires.

if(function_exists('disk_free_space')) {
       $freedisk = @disk_free_space(osc_content_path() . 'uploads/');
}

 

Classé dans : php, - Mots clés : aucun - aucun commentaire

Effacer les tables d'une base MYSQL avec des clés étrangères

Rédigé par adm - 04 octobre 2013

Il n'est pas possible d'effacer des tables d'un base tant que des clés étrangères existent.

 

Après pas mal d'essai voici un script PHP qui

1) enlève les clés étrangères

2) efface les tables

 

<?php
******************* Par tonsite.info ***********************************
$DBNAME = 'nom_de_la Base';
mysql_connect('Host_de_la_base', 'Nom_de_utilisateur', 'mot_de_passe');

//supprime les clés étrangere
mysql_select_db($DBNAME);
$result = mysql_query("SELECT DISTINCT table_name, constraint_name"
  . " FROM information_schema.key_column_usage"
  . " WHERE constraint_schema = '$DBNAME'"
  . " AND referenced_table_name IS NOT NULL");
while($row = mysql_fetch_assoc($result)) {
  mysql_query("ALTER TABLE `$row[table_name]`"
    . " DROP FOREIGN KEY `$row[constraint_name]`")
    or die(mysql_error());
}
mysql_free_result($result);

// effacer les tables

$sql = "SHOW TABLES FROM $DBNAME";
$result = mysql_query($sql);

if (!$result) {
   echo "Erreur DB, impossible de lister les tables\n";
   echo 'Erreur MySQL : ' . mysql_error();
   exit;
}

while ($row = mysql_fetch_row($result)) {
   $deleteIt=mysql_query("DROP TABLE `$row[0]`"); 
}

   mysql_free_result($result);

mysql_close();

?>

 

Classé dans : phpmysql, - Mots clés : aucun - aucun commentaire

Générateur de mots de passe

Rédigé par adm - 04 octobre 2013

Quand il faut changer de mot de passe (mysql, ftp ou autre), au lieu de mettre un mot facilement hackable, voici un petit générateur qui le rendra plus difficile a hacker.

http://www.tonsite.info/pass.php

 

Classé dans : php, - Mots clés : aucun - aucun commentaire

Fil Rss des articles de cette catégorie

page 1 sur 2 suivante

Catégories

Archives

Mots clés

Derniers articles

Derniers commentaires