syntaxe + title

This commit is contained in:
jlecour 2017-04-18 10:00:47 +02:00
parent 769021b9e5
commit 29affe5e98

View file

@ -1,6 +1,8 @@
**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.** ---
title: Bonnes pratiques du développement web
---
# Best Practices du développement web **Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
Voici quelques conseils que nous recommandons fortement aux développeurs web. Voici quelques conseils que nous recommandons fortement aux développeurs web.
@ -10,9 +12,9 @@ Voici quelques conseils que nous recommandons fortement aux développeurs web.
* Un script en crontab ne doit renvoyer sur _stderr_ qu'en cas d'erreur * Un script en crontab ne doit renvoyer sur _stderr_ qu'en cas d'erreur
* Un script en crontab ne doit pas rediriger _stderr_ dans un fichier (exemples à ne pas reproduire: `2> cron_err.log` ou `> cron_err.log 2>&1`) * Un script en crontab ne doit pas rediriger _stderr_ dans un fichier (exemples à ne pas reproduire: `2> cron_err.log` ou `> cron_err.log 2>&1`)
* Un script en crontab ne doit rien renvoyer sur _stdout_ * Un script en crontab ne doit rien renvoyer sur _stdout_
* Un script en crontab devrait être lancé avec une option _-quiet_ ou _-cron_, permettant de * Un script en crontab devrait être lancé avec une option `-quiet` ou `-cron`, permettant de
le lancer en mode interactif sans cette option et d'obtenir des informations (sur _stdout_) le lancer en mode interactif sans cette option et d'obtenir des informations (sur _stdout_)
* Un script en crontab ne devrait pas faire de requête en curl/wget sur _localhost_ ...surtout si * Un script en crontab ne devrait pas faire de requête en curl/wget sur _localhost_ ... surtout si
le script demande beaucoup de ressources ! [[BR]] L'utilisation d'un langage CLI est conseillé. [[BR]] le script demande beaucoup de ressources ! [[BR]] L'utilisation d'un langage CLI est conseillé. [[BR]]
*[PHP]* Dans le cas de PHP, il faut par exemple utiliser PHP CLI (qui a souvent des limitations moins restrictives qu'en mode web) *[PHP]* Dans le cas de PHP, il faut par exemple utiliser PHP CLI (qui a souvent des limitations moins restrictives qu'en mode web)
* Un script doit être lancé dans lancé dans la crontab de l'utilisateur, JAMAIS EN ROOT * Un script doit être lancé dans lancé dans la crontab de l'utilisateur, JAMAIS EN ROOT
@ -24,8 +26,9 @@ Voici quelques conseils que nous recommandons fortement aux développeurs web.
* masque # 027 en mode FTP/SFTP VS masque 077 en mode web * masque # 027 en mode FTP/SFTP VS masque 077 en mode web
* Si besoin des droits d'écriture pour le web : * Si besoin des droits d'écriture pour le web :
~~~ ~~~
chmod g+w $ chmod g+w
~~~ ~~~
* Un fichier avec les droits 777 (ou 666) provoque la fonte de la banquise, dégage du CO2 et tue des bébés chats. * Un fichier avec les droits 777 (ou 666) provoque la fonte de la banquise, dégage du CO2 et tue des bébés chats.
@ -34,23 +37,27 @@ chmod g+w
### Détection des droits incorrects ### Détection des droits incorrects
* Détecter les fichiers non lisibles par Apache (lecture sur le groupe) : * Détecter les fichiers non lisibles par Apache (lecture sur le groupe) :
~~~ ~~~
find ./ -type f ! -perm /g=r -exec ls -l {} \; $ find ./ -type f ! -perm /g=r -exec ls -l {} \;
~~~ ~~~
* Détecter les répertoires non lisibles par Apache (lecture/exécution sur le groupe) : * Détecter les répertoires non lisibles par Apache (lecture/exécution sur le groupe) :
~~~ ~~~
find ./ -type d \( ! -perm /g=r -o ! -perm /g=x \) -exec ls -ld {} \; $ find ./ -type d \( ! -perm /g=r -o ! -perm /g=x \) -exec ls -ld {} \;
~~~ ~~~
* Détecter les fichiers/répertoires accessibles en écriture par Apache (écriture sur le groupe) : * Détecter les fichiers/répertoires accessibles en écriture par Apache (écriture sur le groupe) :
~~~ ~~~
find ./ -perm /g=w $ find ./ -perm /g=w
~~~ ~~~
* Détecter les fichiers/répertoires accessibles en écriture par tous : * Détecter les fichiers/répertoires accessibles en écriture par tous :
~~~ ~~~
find ./ -perm -007 -o -type f -perm -006 $ find ./ -perm -007 -o -type f -perm -006
~~~ ~~~
### Wordpress ### Wordpress
@ -60,23 +67,27 @@ find ./ -perm -007 -o -type f -perm -006
Les droits d'écriture ne sont requis dans un cas général, mais voici les changements de droits souvent requis : Les droits d'écriture ne sont requis dans un cas général, mais voici les changements de droits souvent requis :
* Autoriser les uploads : * Autoriser les uploads :
~~~ ~~~
chmod -R g+w wp-content/uploads/ $ chmod -R g+w wp-content/uploads/
~~~ ~~~
* Gérer des règles d'écritures via Wordpress : * Gérer des règles d'écritures via Wordpress :
~~~ ~~~
chmod 660 .htaccess $ chmod 660 .htaccess
~~~ ~~~
* Pour éditer des thèmes via l'éditeur en ligne de Wordpress : * Pour éditer des thèmes via l'éditeur en ligne de Wordpress :
~~~ ~~~
chmod -R g+w sur les thèmes que l'on veut éditer $ chmod -R g+w sur les thèmes que l'on veut éditer
~~~ ~~~
* Si répertoire de cache : * Si répertoire de cache :
~~~ ~~~
chmod -R g+w cache/ $ chmod -R g+w cache/
~~~ ~~~
* À voir selon les plugins installés (qui doivent documenter les changements de droits nécessaires) * À voir selon les plugins installés (qui doivent documenter les changements de droits nécessaires)