copy par scp

Ou pour envoyer les fichiers du répertoire local psionic, vers le répertoire tmp qui est dans /home/mlx de la machine M1.foo.org :

scp fichier_ou_dossier_local user@machine_distante:dossier_distant
scp ~/psionic/* mlx@foo.org:/home/mlx/tmp
Ou pour rapatrier un fichier(dossier) distant en local
scp vtom@vsch2:/home/vtom/test.txt /home/vtom/

mettre scp -r pour récursive

Conserver les X derniers fichiers d’un dossier

#!/bin/bash
echo On garde les 10 dernieres sauvegardes de Bases
echo «  »
cd $TOM_BACKUP
echo Liste des fichiers effacées
ls -tp | grep « Save » | awk ‘{ if (NR > 10 ) print; }’
rm `ls -tp | grep « Save » | awk ‘{ if (NR > 10 ) print; }’`
df -h /

#!/bin/bash

echo On garde les 10 dernieres sauvegardes de Bases

echo «  »

cd /home/vtom/backup

echo Liste des fichiers qui seront effacés

# exemple : On ne traite que les fichiers qui contiennent « Save »

ls -tp | grep « Save » | awk ‘{ if (NR > 10 ) print; }’

rm `ls -tp | grep « Save » | awk ‘{ if (NR > 10 ) print; }’`

Compatibilité 64 bits vs 32 bits

Sur Vldtb19x, PDTB21

yum install glibc.i686

PJASP1 Client Ubuntu 64.

L’execution des commandes vtom ne fonctionne pas :

./vtping

-bash: ./tva: No such file or directory

-bash: ./vtping: No such file or directory

Il faut installer le pack de compatibilité

apt-get install ia32-libs

En cas de pb on peut essayer d’installer les pack suivants :
apt-get install lib32bz2-1.0

apt-get install lib32z1

apt-get install lib32ncurses5

Sous Redhat (pdtb6)

Si pb sur Redhat ou Oracle Linux Server

yum install ld-linux.so.2

rpm -qa | grep redhat-lsb

yum install redhat-lsb.i686

problème :
bad ELF interpreter: No such file or directory

solution, installer le pack de compatibilité 64 / 32
yum install glibc.i686

Comment lire un fichier ligne par ligne

Préambule

Une des erreurs les plus communes dans l’apprentissage des scripts « bash » sous GNU/LInux pour lire un fichier ligne par ligne, est d’utiliser une boucle « for » (for line in $(cat file.txt); do …), ce qui dans cet exemple conduit à une évaluation, non pas de chaque ligne du fichier, mais de chaque mot ! Ce qui n’est pas du tout le but recherché…

Exemple de sortie avec une boucle « for » :

for line in $(cat file.txt); do echo "$line" ; done Ceci est la ligne n° 1 Ceci est la ligne n° 2 Ceci [...]

La solution consiste à utiliser une boucle « while » couplée à la commande interne « read ».

Mais il est cependant possible d’obtenir le me résultat avec une boucle « for » à condition de changer la valeur de la variable « $IFS » (Internal Field Separator, séparateur de champ interne) avant de lancer la boucle. C’est ce que nous verrons par la suite…

Boucle while

La boucle « while » reste la méthode la plus appropriée et la plus simple pour lire un fichier ligne par ligne.

Syntaxe

while read ligne do commande done < fichier

Exemple

Le fichier de départ :

Ceci est la ligne n° 1 Ceci est la ligne n° 2 Ceci est la ligne n° 3 Ceci est la ligne n° 4 Ceci est la ligne n° 5

Les instructions en ligne de commande :

while read line; do echo -e "$line\n"; done < file.txt

ou dans un script « bash » :

#! /bin/bash while read line do echo -e "$line\n" done < file.txt

La sortie sur l’écran (stdout) :

Ceci est la ligne n° 1 Ceci est la ligne n° 2 Ceci est la ligne n° 3 Ceci est la ligne n° 4 Ceci est la ligne n° 5

Astuces

Il vous est tout a fait possible à partir d’un fichier structuré (comme un carnet d’adresse ou /etc/passwd par exemple), de récupérer les valeurs de chaque champ et de les affecter à plusieurs variables avec la commande « read ». Attention toutefois de bien assigner à la variable « IFS » le bon séparateur de champ (espace par défaut).

Exemple :

#! /bin/bash while IFS=: read user pass uid gid full home shell do echo -e "$full :\n\ Pseudo : $user\n\ UID :\t $uid\n\ GID :\t $gid\n\ Home :\t $home\n\ Shell :\t $shell\n\n" done < /etc/passwd

Bonus

while read i; do echo -e « Paramètre : $i »; done < <(echo -e « a\nab\nc »)

Boucle for

Si la boucle « while » reste la méthode la plus simple, elle a toutefois un inconvénient majeur, à savoir qu’elle annihile le formatage des lignes et notamment les espaces et tabulations ;-\
Heureusement la boucle « for » couplée avec un changement d’IFS permet de garder la structure du document en sortie.

Syntaxe

oldIFS=$IFS # sauvegarde du séparateur de champ IFS=$’\n’ # nouveau séparateur de champ, le caractère fin de ligne for ligne in $(cat fichier) do commande done IFS=$old_IFS # rétablissement du séparateur de champ par défaut

Codes retours

Sous linux

$?

echo $?

redirection de la sortie erreur vers la sortie standard ma_commande > mon_fichier 2>&1 pas de sortie standard ma_commande > null

w_error=0
tval -name ${line} -info > /dev/null
  if [ "$?" -ne "0" ]; then
        echo ${line}
        declare -i w_error=$w_error+1
  fi
exit $w_error

Sous windows

%errorlevel%

echo %errorlevel%

Pour remonter un errorlevel dans Vtom

A la fin du script placer :

exit [/b] [ExitCode]

CHMOD & CHOWN : les droits

Souvent, la solution d’un problème consiste à changer les fameurs droits. Deux outils permettent de le faire, chown permet de changer le propriétaire et chmod les droits du propriétaire, de son groupe et de tout le monde.

Les synthaxes sont simples. Chown prend deux paramètres séparés par un point qui sont le nom du propriétaire et le nom du groupe.

chown www-data:www-data index.php donnera la propriété du fichier au compte utilisateur www-data et attribuera églement www-data comme groupe au fichier.

Du coté de chez chmod, il y a une tripotée de paramètres mais les plus classiques sont :
755 : trois group de chiffres qui sont l’addition de 1, 2 et 4
donc 7 = 1+2+4 qui correspond à 1= executer, 2 = écrire, 4 = lire.

Le premier chiffre représente les droits du propriétaire du fichier, le second du groupe et le troisième de tout le monde. mettre un ficher en 700 donne tout les droits à son propriétaire (et à root) mais aucun à personne d’autre, en 777 donne tous les droits à tout le monde et en 755 la lecture/écriture/éxecution à son propriétaire et juste lecture/execution aux autres. (755 c’est généralement pas mal pour le web).

-R rend ces commandes récursives.

Charge CPU et memoire

Charge CPU

ps ax -eo %cpu,args –sort:%cpu |grep -v grep | grep $proc | awk ‘{s=s+$i }; END{print s}’

Note : si charge CPU proche de 100% et pas de trace dans ps => solution

Pour des infos sur les processeurs (cores) – lister les process et classer par temps d’utilisation cpu
ps -eo pid,user,args,pcpu,psr –sort pcpu
ps axmo user,pid,tid,tt,psr,pcpu,stat,tmout,f,wchan:12,comm

Pour lister les process et classer par temps d’utilisation cpu :
ps ax -o vsize,rss,%mem,%cpu,cputime,args –sort:%cpu (rem : –sort:cputime pas ok)
ps axl –sort:%cpu

Pour lister les process et classer par charge cpu :
ps -eo pid,user,args,pcpu –sort pcpu

Pour lister les process java et la charge cpu :
ps -C java -o pid -o ppid -o pcpu -o cmd –cols 500

Pour lister les process contenant le string j2sdk et la charge cpu :
ps -A -o pid -o ppid -o pcpu -o cmd –cols 500 | grep j2sdk

Pour lister les process contenant le string j2sdk et classer par charge cpu :
ps -A -o pid -o ppid -o pcpu -o cmd –cols 500 –sort pcpu | grep j2sdk

Autres ex :
export UNIX95=yes ; ps -C java -o pid -o ppid -o pcpu -o cmd –cols 500 –sort pcpu
export UNIX95=yes ; ps -aefxo pid,ppid,user,stime,etime,time,pcpu,cpu,flags,state,sz,vsz,wchan,args |grep [j]ava


Mémoire

Notes

SIZE & RSS n’incluent pas certaines parties des processus (page tables, kernel stack, thread_info, task_struct) => 20 Kb ou + de mémoire résidente non comptabilisée par processus dans ps.
SIZE : the virtual size of the process (code+data+stack).
VSIZE (alias VSZ) : mémoire virtuelle (vm) utilisée par le processus (vm_lib + vm_exe + vm_data + vm_stack)
RSS (alias rsz) : Resident Set Size – En Kb, taille mémoire résidant en mémoire centrale (The non-swapped physical memory that a task has used)
%MEM (pmem) : Ratio de RSS par rapport à la mémoire physique

ps axl –sort:rss
ps ax -o vsize,rss,%mem,%cpu,args –sort:rss
ps -eo pid,user,args,pcpu,pmem,sz,vsz,rss
ps ax -o ‘size:6,vsize:8,rss:8,pmem:6,pid:6,command’

Classés par max de VSZ, et affichage des 5 plus gros consommateurs en VSZ :
ps ax -o ‘vsize:6,size:8,rss:8,pmem,pcpu,pid,command’ k-vsz,-rss | head -n6
ps ax -o ‘vsize:6,size:8,rss:8,pmem,pcpu,pid,command’ –sort=-vsz,-rss | head -n6
(l’option « –sort » est obsolete et remplacée par l’option ‘k’)

Classés par max de VSZ, et affichage des 5 plus gros consommateurs :
ps ax -o ‘pid:6,size:6,vsize:8,rss:8,pmem:6,command’ k-vsz,-rss, | head -n6
ps -e -o ‘rss vsz ruser cpu time pid args’ | sort -n
ps -e -o ‘vsz rss ruser cpu time pid args’ | sort -n

Swap
ps -o m_swap,comm -e
top, puis f et p (pour ajouter la colonne SWAP).
Ces valeurs concernant la swap utilisée peuvent être inexistantes (ps) ou fausses (top), voir real swap usage concernant un patch noyau.
grep VmSwap /proc/*/status

Awk one liner mémo

Voici un memo des expression awk permettant des traitements en une ligne. C’est là que l’on voit toute la puissance de awk!

Le fichier d’exemple est fichier:
1 2 3
4 5 6
Le fichier de texte est texte:
le chat est parti le matin.
Il avait du lait dans sa gamelle.
fichier entier

Pour faire la somme des valeurs des lignes
6
15

Pour faire la somme de toutes les lignes
21

Pour connaitre le nombre de champs
6

Pour convertir un fichier msdos sous unix

traitement des colonnes

Pour afficher la dernière colonne
3
6

Pour détruire une colonne (ici la deuxième):

Pour extraire des colones
awk ‘{print $2,$3}’ fichier
2 3
5 6

Pour faire la somme d’une colonne
total: 7

Pour afficher les fichiers qui appartiennent à l’utilisateur root ou jlb:
ls -l | awk ‘$3 == « jlb » || $3 == « root » { print $9}’

Pour afficher les fichiers qui appartiennent à l’utilisateur jlb qui font plus d’1 Ko:
ls –al |awk ‘$3 == « jlb » && $5 > 1024 {print $9}’

Pour afficher les fichiers qui n’appartiennent pas à l’utilisateur oracle:
ls –al |awk ‘$3 != « oracle » {print $9}’

Pour trouver le min et le max de la première colonne

Max = 4 Min = 1

Pour afficher une colone donnée en fonction d’un critère avec | comme délémiteur:

substitutions / extractions

Pour insérer une chaine en début de chaque ligne du fichier
awk ‘{sub(/^/, »rm « );print}’ fichier

Pour substituer une chaine par une autre : gsub pour toutes les occurances, sub pour la première:
X chat est parti le matin.
Il avait du lait dans sa gamelle.
root@hercule:/root #awk ‘{gsub(/le /, »X « );print}’ texte
X chat est parti X matin.
Il avait du lait dans sa gamelle.

Pour afficher une ligne donnée
Il avait du lait dans sa gamelle.

Pour afficher une section entre deux lignes

Pour afficher la première ligne d’un fichier

Pour afficher une section entre deux expression régulières
awk ‘/begin/,/end/’

emulation de commmandes UNIX

Pour émuler la commande uniq :
awk ‘a !~ $0; {a=$0}’

Pour émuler la commande head :
le chat est parti le matin.

Pour émuler la commande grep :
le chat est parti le matin.

Pour émuler la commande grep -v:
Il avait du lait dans sa gamelle.

Pour émuler la commande wc -l:
$awk ‘ END {print NR}’

Pour émuler la commande grep avec des and:

Pour émuler la commande seq :

for i in `echo | awk ‘{ for (i=1;i<10;i++){ print i}}’`
do
echo $i
done

shell extension

Comment effectuer une opération arithmétique avec awk
echo | awk -v x=$a -v y=3 ‘{ print x/y}’
0.666667

Comment tirer un nombre aléatoirement entre 1 et 6:
echo | awk ‘{srand() ; print int(6*rand()+1)}’

Comment splitter les lignes d’un fichier:
cat /etc/passwd | awk ‘{ split($1,t, »: »); print t[1],t[2]}’

Comment afficher en couleur un texte
awk -v a= »\033[1;31m  » ‘BEGIN {print a « rouge »}’

Comment lancer une commande à partir de awk
echo | awk ‘{ system(« ls ») }’

Une autre manière de faire en passant par une variable awk intermédiaire.
awk ‘BEGIN { resultat= system (« ls | grep ksh »)
echo resultat
}’

commandes magiques

Pour renommer tous les fichiers en .Old:
ls *.l | awk ‘{print « mv « $1 » « $1″.old »}’ | sh

Pour connaitre la taille totale occupée par les disques
/1024  » Mb »}’
taille total: 2783.14 Mb

Pour afficher le plus gros fichiers des sous répertoire courrants et sa taille:
3423065 hercule_061115_0000.nmon.csv

Pour afficher un nombre entier
cat lsfs | awk ‘{sum +=$5} END {printf « %.f\n »,sum}’

.profile

Au niveau root dans le .bashrc
.bashrc:[ -z "$PS1" ] && return
.bashrc: PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
.bashrc: PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
.bashrc:#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Au niveau du user dans le .profile

alias ll='ls -latrF'
alias vtom='cd /opt/vtom/'

Lucène pour la recherche sous Drupal

Installation d’Apache Lucène pour la recherche sous Drupal

Tue, 06/23/2009 – 20:01

Qu’est ce que Lucène?

Lucene est un moteur de recherche libre écrit en Java qui permet d’indexer et de rechercher du texte. C’est un projet open source de la fondation Apache mis à disposition sous licence Apache. Il est également disponible pour les langages Ruby, Perl, C++, PHP. Pour plus d’information : http://fr.wikipedia.org/wiki/Lucene

Ou trouver Lucène ?

Le module peut-être téléchargé directement sur ce site, dans les fichiers attachés en bas de page, ou sur la page suivante : http://drupal.org/project/luceneapi (version actuelle : 6.x-1.1)

En plus du module, l’API est requise (toujours téléchargeable en bas de page) ou sur le site de Sourceforge (version actuelle : 6.x-1.0)

Comment l’installer?

Copier le dossier LuceneApi dans le répertoire sites/all/modules . Copier le dossier lib (contenu dans LuceneApi-Lib) directement dans le répertoire LuceneApi (sites/all/modules/luceneapi).

Ensuite, il suffit simplement d’activer les modules, et de les configurer comme désiré.

Les options de recherche

Ranked search results

Lucene has a more sophisticated scoring algorithm that returns the most relevant content first.

Wildcard searching

ap* matches apple, application, te?t matches test, tent.

Boolean operators

AND, OR, AND NOT are supported. + and – are supported as well.

The queries Drupal AND NOT Joomla and Drupal -Joomal are equivalent.

Term grouping

php AND (Drupal OR Zend) matches PHP articles about Drupal or Zend.

Fuzzy searching

test~ matches test, tent based on their Levenshtein distance.

Proximity searching

« Chris Pliakas »~2 matches Chris Middle Name Pliakas because Chris and Pliakas are within 2 words of each other.

Term boosting

php drupal^4 matches PHP and Drupal, but more importance will be placed on Drupal.

The higher the boost factor number, the more relevant the term becomes.

Fielded searching

drupal +title:theming -name:chris matches Drupal articles with the word theming in the title not authored by Chris.

Word stemming (2.x only)

test matches test, testing, tests, tested.

Attachment Size
luceneapi-lib-6.x-1.0.zip 169.28 KB
luceneapi-6.x-1.1.zip 47.87 KB

Installation de Drupal sur Free

2 bis – Installation de Drupal sur Free

sam, 02/07/2009 – 17:30 — admin

Ce chapitre ne fait pas partie du livre Atelier Drupal.

Free propose un espace d’hébergement conséquent, 10 Go, qui a l’avantage d’être gratuit. Il est possible d’installer Drupal chez Free bien que quelques limitations soit gênantes. La plus ennuyeuse pour Drupal est l’impossibilité d’activer le modrewrite de php.

1. Création du compte
Créer un compte pour héberger ses pages perso n’est pas compliqué, mais demande une certaine patience. En effet, votre compte pages perso ne sera activé que 24 voir 48 heures après votre demande et si vous n’avez pas de compte, vous devrez attendre une lettre que free vous enverra par la poste.
Création compte mail
La première chose à faire est de se créer une adresse mail :
Si vous ne possédez pas encore d’accès free :

  • Rendez-vous sur le site http://www.free.fr.
  • Cliquez sur l’onglet S’ABONNER.
  • Dans la liste de gauche, cliquez sur Accès gratuit.
  • Remplissez les champs du cadre de droite.

Ainsi, vous recevrez par la poste vos informations sur votre nouveau compte.

Si possédez un compte free ou si vous avez reçu les informations de votre compte :

  • Rendez-vous sur le site http://www.free.fr.
  • Cliquez sur l’onglet MON COMPTE.
  • Entrez vos Identifiants et Mot de passe.
  • Cliquez sur le bouton Connexion.

Vous arrivez alors sur votre interface de gestion. Depuis cette page, vous pouvez gérer votre compte mail et vos Pages Perso :

free1.png
L’interface d’administration de votre compte free

Activer votre compte pour les pages personnelles Permet de demander l’activation de votre espace
Ré-activer votre compte pour les pages personnelles (si celui-ci a été suspendu) Effectue une nouvelle demande si votre compte a été désactivé
Personnalisez le mot de passe de connexion FTP Modification du mot de passe uniquement pour la connexion FTP
Personnalisez le mot de passe de connexion SQL Modification du mot de passe uniquement pour l’accès à votre base SQL (Et donc à phpMyAdmin)
Consulter les statistiques d’accès webalizer de votre site web Permet d’avoir les statistiques de fréquentation de votre site
Activez les statistiques phpmyvisites de votre site web Autre interface de présentation des statistiques de fréquentation
Consulter les statistiques d’accès phpmyvisites de votre site web
Activer votre base de données MySQL permet de créer une base MySQL
Accéder et gérer votre base de données MySQL accès à phpMyAdmin
  • Cliquez sur le lien Activer votre compte pour les pages personnelles.
  • Chosissez Base MySQL.
  • Cliquez sur bouton >

Votre compte sera alors activé une ou deux journée après la demande. Pour savoir si celui-ci est activé, tentez de vous connecter à phpMyAdmin grâce au lien Accéder et gérer votre base de données MySQL.

free2.png
Votre compte est activé !

2. Transfert des fichiers de DrupalVous allez maintenant installer Drupal à partir de ses fichiers source. Il faut donc télécharger Drupal et transférer les fichiers vers votre serveur.

Connexion ftp au serveur

astuce.png L’extension FireFTP de Firefox sera utilisée pour transférer les fichiers via ftp (https://addons.mozilla.org/fr/firefox/addon/684).

Créer un compte sur FireFTP pour vous connecter à votre serveur

  • Dans Firefox, cliquez sur le menu Outils/FireFTP.
  • Dans la liste déroulante qui permet de choisir les comptes ftp, cliquez sur Create an account…
  • Host : ftp://ftpperso.free.fr
  • Login : Votre Login free.
  • Password : Votre mot de passe free.

free3.png
Compte FTP sur FireFTP

  • Cliquez sur le bouton OK.
  • Cliquez sur le bouton Connect de la page principale de FireFTP.

Si tout c’est bien passé, vous devriez être connecté à votre compte FTP.
Téléchargement et Upload de l’archive Drupal

  • Rendez-vous à la section Download du site web Drupal (http://www.drupal.org/) ou cliquez sur le lien Latest release et téléchargez la dernière version de Drupal.

free4.png
Page d’accueil de drupal.org

  • Décompressez votre archive dans un répertoire local de votre ordinateur.
information.png Si vous ne pouvez pas décompresser votre archive .tar.gz, utilisez le logiciel libre 7zip : http://www.7-zip.org.
  • Sélectionnez l’ensemble du contenu du répertoire drupal-6.x.
  • Copiez tous les fichiers sur votre répertoire distant grâce à FireFTP.

free5.png
Transfert des fichiers de Drupal

Modification du .htaccess Du fait des limitations imposées par free, certaines directives du fichier .htaccess provoquent une erreur 500 à l’installation de Drupal. Vous devez donc modifier le .htacces à la racine de Drupal :

information.png Les fichiers commençant par le caractère « . » sous unix sont des fichiers cachés. Donc, avec FireFTP, si le fichier .htaccess n’apparaît pas dans votre répertoire Drupal, allez dans Tools – Options puis cochez la case Show hidden files de l’onglet General.
  • Editez le fichier .htaccess : avec FireFTP, clic droit sur le fichier – Open
  • Supprimez toutes les lignes
  • Ajoutez les lignes suivantes au fichier :
#
# Apache/PHP/Drupal settings:
## Don’t show directory listings for URLs which map to a directory.
Options -Indexes# Follow symbolic links in this directory.
Options +FollowSymLinks# Make Drupal handle any 404 errors.
ErrorDocument 404 /index.php

PHP 1

# $Id: .htaccess,v 1.90.2.1 2008/07/08 09:33:14 goba Exp $

  • Enregistrez le fichier
[inline_upload|file=information.png|title=information] La ligne PHP 1 permet de forcer l’utilisation de la version 5 de PHP..

Lancez un navigateur internet et entrez l’adresse : http://votrelogin.free.fr. Vous devriez voir apparaître la page d’accueil de Drupal.

free6.png
Drupal est prêt à être installé !

3. Installation de la langue française
La priorité est maintenant d’installer Drupal en Français :

  • Cliquez sur le lien Learn how to install Drupal in other languages de la page http://votrelogin.free.fr.
  • Cliquez sur Determine if a translation of this Drupal version is available, ce qui doit vous rediriger vers la section Translations (Traductions) du site internet Drupal (http://www.drupal.org).
  • Téléchargez alors le fichier French translation pour la version 6.x de Drupal.
  • Décompressez l’archive en local sur votre ordinateur.
  • Sélectionnez l’ensemble du contenu de l’archive.
  • Copiez le sur votre répertoire distant grâce à FireFTP.

free7.png

Envoie des fichiers de la langue française.

free8.png
Drupal est prêt à être installé… en francais !

Voilà ! Vous êtes prêts à installer Drupal !

  • Choose Language (Choix de la langue) : Bien sûr, sélectionnez Français pour passer à l’étape suivante.

4. Installation de la base de données

Pour que Drupal fonctionne correctement, il faut lui indiquer les paramètres de votre base de données.

  • Type de base de données : mysqli
  • Nom d’utilisateur : Nom d’utilisateur de votre base de données.
  • Mot de passe : le mot de passe que vous avez entré lors de la création de la base de données.
  • Cliquez sur Options avancées.
  • Serveur de base de données : Serveur de base de données à utiliser.

free9.png
Installation de la base de données par l’installateur Drupal

  • Cliquez sur le bouton Sauvegarder et poursuivre.

5. Configuration du site
Maintenant que la base est créée, vous allez entrer les paramètres qui permettront à Drupal de créer le premier utilisateur : l’administrateur.
Complétez les champs de la manière suivante :

  • Nom du site : Recettes !
  • Adresse e-mail du site : contact@mondomaine.com (Entrez une adresse valide)
  • Nom d’utilisateur : admin
  • Adresse e-mail : contact@mondomaine.com (Entrez une adresse valide)
  • Mot de passe : Entrez un mot de passe sécurisé

free10.png
Paramètres pour la création du premier utilisateur

  • Cliquez sur le bouton Sauvegarder et poursuivre.
  • Cliquez sur le lien votre nouveau site.

free11.png
L’installation de Drupal est terminée !

information.png Votre site Drupal est installé mais pas sécurisé. La directive FileMatch étant interdite par Free, tous les répertoires sont accessibles en lecture. pour protéger un répertoire et ses sous-repertoire, il faudra créer un fichier .htaccess dans chacun d’eux contenant la directive : deny from all.
En particulier, il est important de protéger le répertoire /sites/default car il contient le fichier settings.php contenant votre mot de passe.
information.png Avec Drupal, par défaut, il est possible pour chaque utilisateur de créer son propre compte sans vérification. Cela peut vous poser un problème de sécurité. Pour modifier cela allez sur Administrer – Gestion des utilisateurs – Paramètres des utilisateurs et choisissez l’option Seuls les administrateurs du site peuvent créer de nouveaux comptes. Puis, cliquez sur le bouton Enregistrer la configuration.

Vous pouvez maintenant partir à la découverte de Drupal !

HTML/CSS -> Fichier .htaccess chez free.fr

Bonjour à tous !

Je vais essayer de vous expliquer clairement la méthode pour protéger l’accès à un dossier par mot de passe sur l’hébergeur free.fr, qui est légèrement différente que celle classique.

C’est vrai il y a une annexe dans les cours php à propos des .htaccess et .htpasswd. Et bien oui, mais elle n’est pas exactement identique chez free.
Mais alors, comment s’y prendre?
Dans le tuto, nous allons protéger le dossier admin par un système de mots de passe.

I. Création du fichier .htaccess:

Le but de ce tuto n’est pas d’expliquer comment envoyer sur le serveur des fichiers de ce style, on trouve de nombreuses explications sur le net à ce propos.

Après avoir créé le fichier .htaccess, vous devez y insérer ceci:

PerlSetVar AuthFile admin/password/.htpasswd
AuthName « Acces Restreint »
AuthType Basic
require valid-user

Pour l’adapter à votre site, vous devez remplacer deux valeurs:
admin/password/.htpasswd: Ceci représente l’emplacement du fichier contenant la liste des mots de passe.
Cette valeur est le chemin du fichier contenant les mots de passe depuis la racine du serveur. Dans le cas de l’exemple, le fichier .htpasswd serait situé dans le dossier admin puis le dossier password.
Quel est l’intêret de créer un dossier password si nous voulons simplement protéger le dossier admin? Nous le verrons plus tard, mais il s’agit d’une question de sécurité, vous comprendrez plus tard.

« Acces Restreint »: Vous pouvez modifier le texte que portera la fenêtre qui s’ouvrira pour rentrer le pseudo et le mot de passe, pour informer l’utilisateur de l’accessibilité du dossier. Attention tout de même de ne pas enlever les guillemets, faute de quoi la protection ne marchera pas convenablement.

II. Création du dossier password qui contiendra le fichier .htpasswd:

Nous allons donc placer ce dossier dans le dossier que nous souhaitons protéger dans notre exemple, mais vous pouvez le placer dans n’importe quel répertoire de votre serveur, il suffit juste de remplacer les valeurs indiquant le chemin du fichier contenant les pass dans le fichier .htaccess.

Pour des raisons de sécurité nous allons faire en sorte que ce fichier ne soit accessible à personne, y compris vous. Nous allons alors créer un fichier .htaccess dans le répertoire password qui permettra de refuser son accès à tout visiteur.
Il suffira donc d’y insérer une ligne:

deny from all

Il est évident que cette étape n’est pas obligatoire, mais elle est conseillée par Free pour encore plus de sécurité. Si vous voulez ne pas la considérer, vous pouvez faire comme dans l’exemple des annexes, mais en gardant tout de même la syntaxe propre à free.

III. Mise en place du fichier .htpasswd:

Chez Free, il n’est pas indispensable que le fichier contenant les pseudos et mot de passe soit appelé .htpasswd. Vous vous souvenez on indique dans le .htaccess le chemin de ce fichier, et bien il peut s’appeler comme on le désire, password.txt, exemple.php, enfin comme on le désire.

Nous allons rencontrer la plus grande différence entre la protection par mot de passe entre Free et les autre. Vous vous souvenez sur un serveur « classique », les mots de passe sont cryptés et enregistrés de cette manière dans le .htpasswd.

Chez Free vous ne devez pas crypter les mots de passe. En effet l’hébergeur a désactivé cette fonction. Il suffit donc de mettre les mots de passe en clair dans le fichier les contenant. Vous voyez maintenant l’intêret de sécuriser davantage le fichier contenant les mots de passe?

Le fichier .htpasswd doit contenir la ligne suivante pour un pseudo utilisateur :

pseudo:motdepasse

Si vous voulez autoriser l’entrée à plusieurs pseudos, vous pouvez répéter cette ligne en changeant mot de passe et pseudo en allant à la ligne.

pseudo:motdepasse
administrateur:admin
moderateur:modo

Vous pouvez en mettre tant que vous voulez.

Ce fichier ne doit contenir ni espaces ni tabulations.

Voila, j’espère que vous aurez compris et réussi à installer les restrictions d’accès.
Je rappelle que celles-ci sont SPECIFIQUES à l’hébergeur Free.fr.

Bon courage à tous.
ben.popeye

Par ben.popeye, le 07 Juillet 2005 à 12h13

Déclaration Doctype

Template

Use the following markup as a template to create a new XHTML 1.0 document using a proper Doctype declaration. See the list below if you wish to use another DTD.

 An XHTML 1.0 Strict standard template

… Your HTML content here …

(X)HTML Doctype Declarations List

HTML 4.01
Strict

Transitional

Frameset

XHTML 1.0
Strict (quick reference)

Transitional

Frameset

XHTML 1.1DTD:

XHTML Basic 1.1 (quick reference):

HTML 5 [NOT a standard yet]

MathML Doctype Declarations

MathML 2.0DTD:

MathML 1.01DTD:

Compound documents doctype declarations

XHTML + MathML + SVGDTD:

XHTML + MathML + SVG Profile (XHTML as the host language) – DTD:

XHTML + MathML + SVG Profile (Using SVG as the host) – DTD:

Optional doctype declarations

Beyond the specificities of (X)HTML processing, Doctype declarations in XML languages are only useful to declare named entities and to facilitate the validation of documents based on DTDs. This means that in many XML languages, doctype declarations are not necessarily useful.

The list below is provided only if you actually need to declare a doctype for these types of documents.

SVG 1.1 FullDTD:

SVG 1.0DTD:

SVG 1.1 BasicDTD:

SVG 1.1 TinyDTD:

Historical doctype declarations

The doctype declarations below are valid, but have mostly an historical value — a doctype declaration of a more recent equivalent ought to be used in their stead.

HTML 2.0DTD:

HTML 3.2DTD:

XHTML Basic 1.0DTD:

Comment se débarrasser de TEXT ENHANCE

le plus facile : aller sur le site text-enhance.com.
tour en bas de la page, cliquer sur : Opt-out

Normalement ça suffit.

si non à la question , « If you want to uninstall Text Enhance, follow the instructions listed here. » (si vous voulez désinstaller Text-enhance cliquez icic)
cliquez sur « here », et vous arrivez sur la page avec les différentes instructions pour Chrome, IE ou Firefox. comme ci dessous :

If you installed the Chrome Extension (CRX):

Step 1:
Open Chrome, click on the Settings icon, and navigate to Tools -> Extensions.

Step 2:
Select the Text Enhance plugin from the list of extensions, and click Uninstall.

That’s it, Text Enhance plug-in is now uninstalled!

If you installed the Firefox Addon (XPI):

Step 1:
Open Firefox, and navigate to Tools -> Add-ons.

Step 2:
Select the Text Enhance plugin from the list of add-ons, and click Uninstall.

That’s it, Text Enhance plug-in is now uninstalled!

If you installed the plugin for other browsers:

Step 1:
Click Start, and navigate to: Control Panel.

Step 2:
Select « Add/Remove Programs » from the Control Panel. For Windows Vista/7 users, this will be called « Programs/Features ».

Step 3:
Select the Text Enhance plugin from the list of software, and click Uninstall/Remove.

That’s it, Text Enhance plug-in is now uninstalled!

Choisissez votre navigateur et suivez les instructions.

pourquoi chercher loin ce que l’on a sous le pied…..

Codes couleurs HTML

Nom de la couleur Aperçu Codage RVB
aliceblue ███████ aliceblue #F0F8FF
antiquewhite ███████ antiquewhite #FAEBD7
aqua ███████ aqua #00FFFF
aquamarine ███████ aquamarine #7FFFD4
azure ███████ azure #F0FFFF
beige ███████ beige #F5F5DC
bisque ███████ bisque #FFE4C4
black ███████ black #000000
blanchedalmond ███████ blanchedalmond #FFEBCD
blue ███████ blue #0000FF
blueviolet ███████ blueviolet #8A2BE2
brown ███████ brown #A52A2A
burlywood ███████ burlywood #DEB887
cadetblue ███████ cadetblue #5F9EA0
chartreuse ███████ chartreuse #7FFF00
chocolate ███████ chocolate #D2691E
coral ███████ coral #FF7F50
cornflowerblue ███████ cornflowerblue #6495ED
cornsilk ███████ cornsilk #FFF8DC
crimson ███████ crimson #DC143C
cyan ███████ cyan #00FFFF
darkblue ███████ darkblue #00008B
darkcyan ███████ darkcyan #008B8B
darkgoldenrod ███████ darkgoldenrod #B8860B
darkgray ███████ darkgray #A9A9A9
darkgreen ███████ darkgreen #006400
darkkhaki ███████ darkkhaki #BDB76B
darkmagenta ███████ darkmagenta #8B008B
darkolivegreen ███████ darkolivegreen #556B2F
darkorange ███████ darkorange #FF8C00
darkorchid ███████ darkorchid #9932CC
darkred ███████ darkred #8B0000
darksalmon ███████ darksalmon #E9967A
darkseagreen ███████ darkseagreen #8FBC8F
darkslateblue ███████ darkslateblue #483D8B
darkslategray ███████ darkslategray #2F4F4F
darkturquoise ███████ darkturquoise #00CED1
darkviolet ███████ darkviolet #9400D3
deeppink ███████ deeppink #FF1493
deepskyblue ███████ deepskyblue #00BFFF
dimgray ███████ dimgray #696969
dodgerblue ███████ dodgerblue #1E90FF
firebrick ███████ firebrick #B22222
floralwhite ███████ floralwhite #FFFAF0
forestgreen ███████ forestgreen #228B22
fuchsia ███████ fuchsia #FF00FF
gainsboro ███████ gainsboro #DCDCDC
ghostwhite ███████ ghostwhite #F8F8FF
gold ███████ gold #FFD700
goldenrod ███████ goldenrod #DAA520
gray ███████ gray #808080
green ███████ green #008000
greenyellow ███████ greenyellow #ADFF2F
honeydew ███████ honeydew #F0FFF0
hotpink ███████ hotpink #FF69B4
indianred ███████ indianred #CD5C5C
indigo ███████ indigo #4B0082
ivory ███████ ivory #FFFFF0
khaki ███████ khaki #F0E68C
lavender ███████ lavender #E6E6FA
lavenderblush ███████ lavenderblush #FFF0F5
lawngreen ███████ lawngreen #7CFC00
lemonchiffon ███████ lemonchiffon #FFFACD
lightblue ███████ lightblue #ADD8E6
lightcoral ███████ lightcoral #F08080
lightcyan ███████ lightcyan #E0FFFF
lightgoldenrodyellow ███████ lightgoldenrodyellow #FAFAD2
lightgreen ███████ lightgreen #90EE90
lightgrey ███████ lightgrey #D3D3D3
lightpink ███████ lightpink #FFB6C1
lightsalmon ███████ lightsalmon #FFA07A
lightseagreen ███████ lightseagreen #20B2AA
lightskyblue ███████ lightskyblue #87CEFA
lightslategray ███████ lightslategray #778899
lightsteelblue ███████ lightsteelblue #B0C4DE
lightyellow ███████ lightyellow #FFFFE0
lime ███████ lime #00FF00
limegreen ███████ limegreen #32CD32
linen ███████ linen #FAF0E6
magenta ███████ magenta #FF00FF
maroon ███████ maroon #800000
mediumaquamarine ███████ mediumaquamarine #66CDAA
mediumblue ███████ mediumblue #0000CD
mediumorchid ███████ mediumorchid #BA55D3
mediumpurple ███████ mediumpurple #9370DB
mediumseagreen ███████ mediumseagreen #3CB371
mediumslateblue ███████ mediumslateblue #7B68EE
mediumspringgreen ███████ mediumspringgreen #00FA9A
mediumturquoise ███████ mediumturquoise #48D1CC
mediumvioletred ███████ mediumvioletred #C71585
midnightblue ███████ midnightblue #191970
mintcream ███████ mintcream #F5FFFA
mistyrose ███████ mistyrose #FFE4E1
moccasin ███████ moccasin #FFE4B5
navajowhite ███████ navajowhite #FFDEAD
navy ███████ navy #000080
oldlace ███████ oldlace #FDF5E6
olive ███████ olive #808000
olivedrab ███████ olivedrab #6B8E23
orange ███████ orange #FFA500
orangered ███████ orangered #FF4500
orchid ███████ orchid #DA70D6
palegoldenrod ███████ palegoldenrod #EEE8AA
palegreen ███████ palegreen #98FB98
paleturquoise ███████ paleturquoise #AFEEEE
palevioletred ███████ palevioletred #DB7093
papayawhip ███████ papayawhip #FFEFD5
peachpuff ███████ peachpuff #FFDAB9
peru ███████ peru #CD853F
pink ███████ pink #FFC0CB
plum ███████ plum #DDA0DD
powderblue ███████ powderblue #B0E0E6
purple ███████ purple #800080
red ███████ red #FF0000
rosybrown ███████ rosybrown #BC8F8F
royalblue ███████ royalblue #4169E1
saddlebrown ███████ saddlebrown #8B4513
salmon ███████ salmon #FA8072
sandybrown ███████ sandybrown #F4A460
seagreen ███████ seagreen #2E8B57
seashell ███████ seashell #FFF5EE
sienna ███████ sienna #A0522D
silver ███████ silver #C0C0C0
skyblue ███████ skyblue #87CEEB
slateblue ███████ slateblue #6A5ACD
slategray ███████ slategray #708090
snow ███████ snow #FFFAFA
springgreen ███████ springgreen #00FF7F
steelblue ███████ steelblue #4682B4
tan ███████ tan #D2B48C
teal ███████ teal #008080
thistle ███████ thistle #D8BFD8
tomato ███████ tomato #FF6347
turquoise ███████ turquoise #40E0D0
violet ███████ violet #EE82EE
wheat ███████ wheat #F5DEB3
white ███████ white #FFFFFF
whitesmoke ███████ whitesmoke #F5F5F5
yellow ███████ yellow #FFFF00
yellowgreen ███████ yellowgreen #9ACD32