|
1 2 |
RewriteEngine on RewriteRule ^favicon\.ico$ /some-where/favicon.ico [L] |
Chercher/remplacer dans un fichier
|
1 |
sed -i 's/old-text/new-text/g' input.txt |
WP-CLI
Téléchargement de l’outil
|
1 |
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar |
Ajustement des droits
|
1 |
chmod 755 wp-cli.phar |
Test
|
1 |
php wp-cli.phar --info |
Afin d’utiliser l’alias, on déplace le fichier à la racine et on ajoute l’alias avec le chemin absolu
|
1 |
alias wp='[chemin]/wp-cli.phar' |
Téléchargement de WordPress en français
|
1 |
wp core download --locale=fr_FR |
Création du fichier de configuration
|
1 |
wp config create --dbname=[db] --dbuser=[user] --prompt=dbpass |
On peut ajouter l’argument –dbhost= si le serveur MySQL n’est pas localhost
Installation du WordPress
|
1 |
wp core install --url=[url] --title=[titre] --admin_user=cyril --prompt=admin_password --admin_email=contact@cyrilbosson.com |
Correction du chemin si dans un sous-dossier
wp option update siteurl https://www.domain.td
wp option update home https://www.domain.td
Modifier permissions fichiers/dossiers
Pour modifier les permissions de tous les fichiers :
|
1 |
find . -type f -exec chmod 666 {} + |
Pour modifier les permissions de tous les dossiers :
|
1 |
find . -type d -exec chmod 755 {} + |
Création administrateur WordPress via MySQL
|
1 2 3 4 5 6 7 |
INSERT INTO `wp_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('[ID]', '[LOGIN]', MD5('[PASSWORD]'), '[NAME]', '[EMAIL]', '', NOW(), '', '0', '[NAME]'); INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '[ID]', 'wp_capabilities', 'a:1:{s:13:”administrator”;b:1;}'); INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '[ID]', 'wp_user_level', '10'); |
Valeurs à remplacer:
- [ID] Prochain index automatique de la table wp_users
- [LOGIN] Identifiant de connexion
- [PASSWORD] Mot de passe en clair
- [NAME] Nom du compte
- [EMAIL] Adresse e-mail du compte
Attention: il faut modifier le préfixe des tables s’il a été changé à l’installation du WordPress. Il faut aussi modifier le préfixe au niveau de la valeur « meta_key ».
Fusionner 2 dossiers
rsync -a /source/ /destination/
Options:
- -u pour remplacer uniquement les fichiers plus anciens
- –ignore-existing pour conserver les fichiers dans la destination
- –remove-source-files pour supprimer les fichiers de la source après copie
- -P pour afficher la progression
Copier des fichiers avec affichage de la progression
|
1 |
rsync -avzh --progress [source] [destination] |
Exemple:
|
1 |
rsync -avzh --progress /ancien/chemin/ /nouveau/chemin |
Note:
- On ajoute un slash à la fin de la destination si on souhaite rajouter un niveau d’arborescence (par exemple: /nouveau/chemin/chemin/)
Git: Télécharger les fichiers modifiés entre 2 commits
|
1 |
git archive -o update.zip HEAD $(git diff --name-only [premier commit] [dernier commit]) |
Exemple:
|
1 |
git archive -o update.zip HEAD $(git diff --name-only c8cf6f4 cf67744) |
A noter que le premier commit est exclu alors que le dernier est inclus.
Recevoir par email la liste des derniers fichiers modifiés
|
1 |
find /chemin/à/inspecter/ -type f -mmin -1440 -not -name "*.jpg" | mail -s "Derniers fichiers modifiés" test@example.com |
- « 1440 » correspond aux nombres de minutes max depuis la dernière modification
- « -not -name » indique qu’il ne faut pas inspecter les fichiers correspondant au masquer qui suit
La commande peut être intégré au sein d’un cron pour un contrôle journalier:
|
1 |
0 0 * * * find /chemin/à/inspecter/ -type f -mmin -1440 -not -name "*.jpg" | mail -s "Derniers fichiers modifiés" test@example.com |
Analyser les logs d’erreur de PHP
Uniquement les erreurs de type « warning » et « fatal »
|
1 |
tail -f error.log | grep -E 'Warning|Fatal' |
Provenant d’une IP spécifique
|
1 |
tail -f error.log | grep -E '123.456.789.123' |