syntaxe + title
This commit is contained in:
parent
769021b9e5
commit
29affe5e98
|
@ -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.
|
||||
|
||||
|
@ -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 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 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_)
|
||||
* 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]]
|
||||
*[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
|
||||
|
@ -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
|
||||
* 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.
|
||||
|
@ -34,23 +37,27 @@ chmod g+w
|
|||
### Détection des droits incorrects
|
||||
|
||||
* 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) :
|
||||
|
||||
~~~
|
||||
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) :
|
||||
|
||||
~~~
|
||||
find ./ -perm /g=w
|
||||
$ find ./ -perm /g=w
|
||||
~~~
|
||||
|
||||
* 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
|
||||
|
@ -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 :
|
||||
|
||||
* 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 :
|
||||
|
||||
~~~
|
||||
chmod 660 .htaccess
|
||||
$ chmod 660 .htaccess
|
||||
~~~
|
||||
|
||||
* 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 :
|
||||
|
||||
~~~
|
||||
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)
|
||||
|
|
Loading…
Reference in New Issue