How to fix the error mbstring extension is missing
Table des matières:
- Configuration du journal d'accès
- Configuration du journal des erreurs
- Emplacement des fichiers journaux
- Lecture et compréhension des fichiers journaux Nginx
- Conclusion
Nginx est un serveur HTTP et proxy inverse open source et hautes performances chargé de gérer la charge de certains des plus grands sites Internet. Lors de la gestion des serveurs Web NGINX, l'une des tâches les plus fréquentes que vous effectuerez est la vérification des fichiers journaux.
Savoir configurer et lire les journaux est très utile pour résoudre les problèmes de serveur ou d'application car ils fournissent des informations de débogage détaillées.
Nginx écrit des enregistrements de ses événements dans deux types de journaux: les journaux d'accès et les journaux d'erreurs. Les journaux d'accès écrivent des informations sur les demandes des clients et les journaux d'erreurs écrivent des informations sur le serveur et les problèmes d'application.
Cet article explique comment configurer et lire les journaux d'accès et d'erreur Nginx.
Configuration du journal d'accès
Chaque fois qu'une demande client est traitée, Nginx génère un nouvel événement dans le journal d'accès. Chaque enregistrement d'événement contient un horodatage et comprend diverses informations sur le client et la ressource demandée. Les journaux d'accès peuvent vous montrer l'emplacement des visiteurs, la page qu'ils visitent, combien de temps ils passent sur la page, et bien plus encore.
La directive
log_format
vous permet de définir le format des messages enregistrés. La directive
access_log
active et définit l'emplacement du fichier journal et le format utilisé.
La syntaxe la plus élémentaire de la directive
access_log
est la suivante:
access_log log_file log_format;
Où
log_file
est le chemin d'accès complet au fichier journal et
log_format
est le format utilisé par le fichier journal.
Le journal d'accès peut être activé dans
http
,
server
ou bloc de directives d'
location
.
Par défaut, le journal d'accès est globalement activé dans la directive
http
à l'intérieur du fichier de configuration Nginx principal.
http {… access_log /var/log/nginx/access.log;… }
Pour une meilleure maintenabilité, il est recommandé de définir un fichier journal d'accès distinct pour chaque bloc serveur. La directive
access_log
définie dans la directive
server
remplace celle définie dans la directive
http
(niveau supérieur).
http {… access_log /var/log/nginx/access.log;… server { server_name domain.com access_log /var/log/nginx/domain.access.log;… } }
Si aucun format de journal n'est spécifié, Nginx utilise le format combiné prédéfini qui ressemble à ceci:
log_format combined '$remote_addr - $remote_user ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';
Pour modifier le format de journalisation, remplacez le paramètre par défaut ou définissez-en un nouveau. Par exemple, pour définir un nouveau format de journalisation nommé main qui étendra le format combiné avec la valeur montrant l'en
X-Forwarded-For
tête
X-Forwarded-For
ajoutez la définition suivante dans la directive
http
ou
server
:
log_format custom '$remote_addr - $remote_user "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
Pour utiliser le nouveau format, spécifiez son nom après le fichier journal comme indiqué ci-dessous:
access_log /var/log/nginx/access.log custom;
Alors que le journal d'accès fournit des informations très utiles. cela prend de l'espace disque et peut affecter les performances du serveur. Si votre serveur manque de ressources et que votre site Web est occupé, vous souhaiterez peut-être désactiver le journal d'accès. Pour ce faire,
off
la valeur de la directive
access_log
:
Configuration du journal des erreurs
Nginx écrit des messages sur l'application et les erreurs générales du serveur dans le fichier journal des erreurs. Si vous rencontrez des erreurs dans votre application Web, le journal des erreurs est le premier point de départ pour résoudre les problèmes.
La directive
error_log
active et définit l'emplacement et le niveau de gravité du journal des erreurs. Il prend la forme suivante et peut être défini dans un bloc
http
,
server
ou
location
:
error_log log_file log_level
Le paramètre
log_level
définit le niveau de journalisation. Vous trouverez ci-dessous les niveaux répertoriés par leur gravité (de faible à élevé):
-
debug
- Messages de débogage.info
- Messages d'information.notice
- Avis.warn
- Avertissements.error
- Erreurs lors du traitement d'une demande.crit
- Problèmes critiques. Nécessite une action rapide.alert
- Alertes. Des mesures doivent être prises immédiatement.emerg
- Situation d'urgence. Le système est dans un état inutilisable.
Chaque niveau de journal comprend les niveaux supérieurs. Par exemple, si vous définissez le niveau de journalisation sur
warn
, Nginx enregistrera également les messages d'
error
, de
crit
, d'
alert
et d'
emerg
.
Lorsque le paramètre
log_level
n'est pas spécifié, sa valeur par défaut est
error
.
Par défaut, la directive
error_log
est définie dans la directive
http
à l'intérieur du fichier nginx.conf principal:
http {… error_log /var/log/nginx/error.log;… }
Comme pour les journaux d'accès, il est recommandé de définir un fichier journal des erreurs distinct pour chaque bloc de serveur, qui remplace le paramètre hérité des niveaux supérieurs.
Par exemple, pour définir le journal d'erreurs de domain.com afin qu'il vous
warn
, utilisez:
http {… error_log /var/log/nginx/error.log;… server { server_name domain.com error_log /var/log/nginx/domain.error.log warn;… } }
Chaque fois que vous modifiez le fichier de configuration, vous devez redémarrer le service Nginx pour que les modifications prennent effet.
Emplacement des fichiers journaux
Par défaut sur la plupart des distributions Linux, telles que Ubuntu, CentOS et Debian, les journaux d'accès et d'erreur se trouvent dans le répertoire
/var/log/nginx
.
Lecture et compréhension des fichiers journaux Nginx
Vous pouvez ouvrir et analyser les fichiers journaux à l'aide de commandes standard comme
cat
,
less
,
grep
,
cut
,
awk
, etc.
Voici un exemple d'enregistrement du fichier journal d'accès qui utilise le format de journal Nginx par défaut:
192.168.33.1 - - "GET / HTTP/1.1" 200 396 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"
Décomposons ce que signifie chaque champ de l'enregistrement:
-
$remote_addr
-192.168.33.1
- L'adresse IP du client qui fait la demande.$remote_user
--
- Utilisateur authentifié HTTP. Lorsque le nom d'utilisateur n'est pas défini, ce champ affiche-
. -"$request"
-"GET /
- Le type de demande, le chemin et le protocole.$status
-200
- Le code de réponse du serveur.$body_bytes_sent
-396
- La taille de la réponse du serveur en octets."$http_referer"
-"-"
- L'URL de la référence."$http_user_agent"
-Mozilla/5.0…
- L'agent utilisateur du client (navigateur Web).
Utilisez la commande
tail
pour regarder le fichier journal en temps réel:
Conclusion
Les fichiers journaux vous fournissent des informations utiles sur les problèmes de serveur et la façon dont les visiteurs interagissent avec votre site Web.
Nginx vous permet de configurer les journaux d'accès et d'erreur en fonction de vos besoins.
nginxMicrosoft profite en vendant des publicités en ligne sur son moteur de recherche à des gangs criminels gérant des sites Web pharmaceutiques offrant des médicaments Selon une nouvelle étude, Microsoft vend des publicités en ligne sur son moteur de recherche à des gangs criminels qui gèrent des sites Web pharmaceutiques offrant des médicaments à des personnes sans ordonnance adéquate.
Environ 89,7% des Selon le rapport, les pharmacies qui paient des publicités sur le dernier moteur de recherche de la société, Bing.com, sont frauduleuses ou se livrent à des activités illégales. KnujOn, une compagnie antispam, et LegitScript, qui offre un service qui vérifie la légitimité de certaines pharmacies en ligne, ont publié le rapport.
Verizon: les violations de données sont souvent causées par des erreurs de configuration
Les pirates préfèrent compter sur des problèmes de configuration et des erreurs de programmation. Selon une nouvelle étude de Verizon, les pirates semblent compter de plus en plus sur des problèmes de configuration et des erreurs de programmation plutôt que sur des vulnérabilités logicielles pour voler des informations provenant de systèmes informatiques.
Microsoft prend au sérieux les allégations selon lesquelles des partenaires commerciaux se livrent à des pots-de-vin pour obtenir des marchés publics dans trois pays en dehors des États-Unis, le Microsoft a pris mardi au sérieux les accusations selon lesquelles des partenaires commerciaux se seraient livrés à des pots-de-vin pour obtenir des marchés publics dans trois pays en dehors des Etats-Unis, a annoncé mardi le Wall Street Journal. la Securities and Exchange Commission des États-Unis enquê
[Lectures supplémentaires: Votre nouvel ordinateur a besoin de ces 15 programmes gratuits et excellents]