Lorsque je démarre le serveur Rails avec la commande Rails s
, il affiche A server is already running. Check C:/Sites/folder/Pids/Server.pids
Lorsque j'ouvre le fichier, il ne génère qu'un numéro à 4 chiffres. Comment résoudre ce problème?
FYI
cmd.exe
indique qu'aucun autre processus n'est en cours d'exécution. (sous Windows).Supprimez le fichier: C: /Sites/folder/Pids/Server.pids
Ancienne solution:
Rails s -p 4000 -P tmp/pids/server2.pid
Vous pouvez également trouver ce message pour plus d'options La mise à jour de Rails vers 3.2.11 interrompt l'exécution de plusieurs serveurs
Nouvelles solutions
lorsque vous exécutez Rails s
=> Amorcer WEBrick
=> Application Rails 4.0.4 démarrant en développement sur http://0.0.0.0:3000
=> Exécuter Rails server -h
pour plus d'options de démarrage
=> Ctrl-C pour arrêter le serveur
Un serveur est déjà en cours d'exécution. Vérifiez /your_project_path/tmp/pids/server.pid. Sortie
Alors placez votre chemin indiqué ici /your_project_path/tmp/pids/server.pid
et supprimez ce fichier server.pid:
rm /your_project_path/tmp/pids/server.pid
OR Si votre serveur est déconnecté, suivez les instructions ci-dessous:
Si vous avez détaché votre serveur Rails en utilisant la commande "Rails -d", alors,
Supprimer le serveur détaché de Rails à l'aide de la commande
ps -aef | grep Rails
OR par cette commande
Sudo lsof -wni tcp:3000
puis
kill -9 pID
OR utilise cette commande
Pour trouver et tuer le processus par nom de port sur lequel ce programme est exécuté. Pour 3000, remplacez le port sur lequel votre programme est exécuté.
Sudo kill -9 $(lsof -i :3000 -t)
lsof -wni tcp:3000
Ensuite, vous devriez voir le processus Ruby et vous pouvez exécuter
kill -9 processid
vous devriez être bon pour exécuter le processus maintenant
Rails s thin
exécuter plusieurs processus ne semble pas être une bonne idée et d'après ce que j'ai lu, beaucoup de gens sont d'accord. Malheureusement, j'ai constaté de nombreuses fuites de mémoire avec Rails. Je ne pouvais donc pas imaginer deux processus en cours d'exécution. Je sais qu'avec un temps supplémentaire, l'actualisation de la page devient de plus en plus lente à cause des données stockées dans la mémoire.
kill -9 $(lsof -i tcp:3000 -t)
$ lsof -wni tcp:3000
# Kill the running process
$ kill -9 5946
$ rm tmp/server.pids
contremaître démarrer etc démarrer le service
Vous pouvez vous débarrasser du processus en le tuant:
kill -9 $(lsof -i tcp:3000 -t)
Cela se produit lorsque vous supprimez le processus de votre serveur et que le fichier pid n'a pas été mis à jour ..__ La meilleure solution consiste à supprimer le fichier Server.pid .
Utilisez la commande
rm <path to file Server.pid>
gem install shutup
puis allez dans le dossier actuel de votre projet Rails et lancez
shutup
# cela va tuer le processus Rails en cours d'exécution
Vous pouvez utiliser la commande 'shutup' chaque fois que vous voulez
DICLAIMER: Je suis le créateur de ce joyau
REMARQUE: si vous utilisez rvm, installez la gem globalement
rvm @global do gem install shutup
Vous avez probablement suspendu le serveur avec: ^Z
.
Le numéro numérique qui vim C:/Sites/folder/Pids/Server.pids
outputs est le numéro de processus.
Vous devriez kill -9 processid
, en remplaçant l'ID de processus par les 4 nombres que vim (ou un autre éditeur) ont sortis.
Si vous êtes sous Windows, il vous suffit de n’effectuer qu’une étape en tant que'Rails restart', puis à nouveau tapez 'Rails s' sont bons pour aller.
Exécuter: fuser -k -n tcp 3000
Cela va tuer le processus en cours d'exécution sur le port 3000 par défaut.
Courir:
sous Ubuntu/linux
Sudo rm /var/www/html/Rails/WBPOCTEST/tmp/pids/server.pid
Ou
pkill -9 Ruby
ou
lsof -wni tcp:3000
kill -9 pid
Je viens d'avoir ce problème et j'ai essayé de le configurer sur un autre port, mais la seule chose à faire était de supprimer mon [app_directory]/tmp/pids/server.pid
et tout était prêt.
Sous Windows Rails 5.2, supprimez ce fichier.
c:/Sites/<your_folder>/tmp/pids/server.pid
et courir
Rails s
encore.