Problème avec l'erreur de rapport nginx lors du redémarrage sous la ligne de commande Windows
漂亮男人
漂亮男人 2017-05-16 17:25:26
0
4
1194

Supposons que vous saisissiez la commande suivante sous Windows :

E:\mywamp\apache2.2\bin>E:\mywamp\nginx-1.6.2\nginx.exe -s reload

Ensuite, le résultat d'entrée est comme ceci :

nginx: [alert] could not open error log file: CreateFile() "logs/error.log" failed (3: The system cannot find the path specified)
2015/01/26 22:07:10 [emerg] 5164#5196: CreateFile() "E:\mywamp\apache2.2\bin/conf/nginx.conf" failed (3: The system cannot find the path specified)

La solution est de d'abord accéder au répertoireE:mywampapache2.2bin>E:mywampnginx-1.6.2,然后运行nginx -s reload. J'ai l'impression que c'est trop gênant. J'aimerais demander s'il existe un moyen plus simple.

漂亮男人
漂亮男人

répondre à tous(4)
滿天的星座

L'option -c de

nginx peut spécifier le chemin d'accès au fichier de configuration, vous pouvez donc essayer de spécifier le chemin absolu lors de la spécification du fichier journal dans le fichier de configuration, comme E:mywampnginx-1.6.2logsaccess.log (empêcher le journal de erreur d'ouverture du fichier journal), puis utilisez le chemin absolu du fichier de configuration lors de l'exécution du rechargement nginx :

shellE:\mywamp\nginx-1.6.2\nginx.exe -s reload -c E:\mywamp\nginx-1.6.2\conf\nginx.conf

Cependant, il semble qu'il y ait encore des problèmes ci-dessus, qui sont tous des problèmes de chemin. Nginx s'appuie trop sur le chemin actuel.

Essayez ensuite de trouver un moyen de réinitialiser le répertoire actuel avant d'exécuter la commande nginx. Sous Windows, vous pouvez utiliser la commande start et le paramètre /D pour spécifier le répertoire de démarrage. Alors juste comme çastart /D E:mywampnginx-1.6.2 nginx -s reload

仅有的幸福

Tout d’abord, puisque vous choisissez nginx, ne l’utilisez pas sous Windows, l’efficacité est bien pire que sous Linux.

Deuxièmement, la raison pour laquelle ce fichier ne peut pas être ouvert est évidemment que le chemin relatif par défaut n'est pas reconnu. Modifiez le fichier nginx.conf et ajustez l'adresse du chemin d'accès_log.

Enfin, il est recommandé d'ajouter la commande nginx directement aux variables d'environnement. Il en va de même sous Linux. Veuillez vous référer à Java pour configurer les variables d'environnement

.
Ty80

Ajoutez le paramètre -p pour spécifier le chemin et la solution sera parfaite
E:mywampapache2.2bin>E:mywampnginx-1.6.2nginx.exe -p E:mywampnginx-1.6.2 -s reload

迷茫

N'ajoutez pas Nginx au chemin, créez un fichier nginx.cmd sous l'un de vos propres chemins :

@set nginx_path=D:\Local\Nginx
@echo off
pushd %nginx_path%
if "%*" == "" (
  start /b %nginx_path%\nginx.exe
) else (
  call %nginx_path%\nginx.exe %*
)
popd

La solution qui m'est soudainement venue à l'esprit aujourd'hui, même si ce problème existe depuis deux ans (
https://gist.github.com/hyrio...

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!