Quando estou iniciando o servidor rails usando o rails s
comando, ele está mostrandoA server is already running. Check C:/Sites/folder/Pids/Server.pids
Quando abro o arquivo, ele está emitindo apenas um número de 4 dígitos. Como posso resolver esse problema?
Para sua informação
- Nenhuma outra instância do cmd do Rails está sendo executada neste momento.
- Gerenciador de tarefas marcado, mas apenas
cmd.exe
mostrando que nenhum outro processo está em execução. (usando o Windows).
Respostas:
Remova o arquivo: C: /Sites/folder/Pids/Server.pids
Explicação No UNIX, pelo menos, geralmente controlamos a identificação do processo (pid) em um arquivo como server.pid. Eu acho que isso está fazendo a mesma coisa aqui. Esse arquivo provavelmente foi deixado de um acidente.
fonte
netstat -a -o
em um prompt de comando para ver qual processo está usando a porta 3000TL; DR Basta executar este comando para matá-lo
Causa Raiz: Como o PID está bloqueado em um arquivo e o servidor da Web pensa que, se esse arquivo existe, significa que já está em execução. Normalmente, quando um servidor da Web é fechado, esse arquivo é excluído, mas, em alguns casos, a exclusão adequada não ocorre; portanto, você deve remover o arquivo manualmente Novas soluções
quando você executa trilhos s
=> Inicializando o WEBrick
=> Aplicativo Rails 4.0.4 iniciando no desenvolvimento em
http://0.0.0.0:3000
=> Corra
rails server -h
para obter mais opções de inicialização=> Ctrl-C para desligar o servidor
Um servidor já está em execução. Marque /your_project_path/tmp/pids/server.pid. Saindo
Portanto, coloque seu caminho mostrado aqui /your_project_path/tmp/pids/server.pid
e remova este arquivo server.pid :
OU Caso seu servidor tenha sido desanexado, siga as diretrizes abaixo:
Se você desconectou o servidor Rails usando o comando "rails -d", então,
Remova o servidor desconectado dos trilhos usando o comando
OU por este comando
então
OU use este comando
Para localizar e interromper o processo pelo nome da porta na qual esse programa está sendo executado. Para 3000, substitua a porta na qual seu programa está sendo executado.
Solução antiga:
Além disso, você pode encontrar este post para mais opções Rails Update to 3.2.11 breaks executando vários servidores
fonte
sudo kill -9 $(lsof -i :3000 -t)
Então você deverá ver o processo ruby e poderá executar
você deve ser bom para executar o processo agora
executar vários processos não parece uma boa ideia e pelo que li muitas pessoas concordam. Eu notei muitos vazamentos de memória com trilhos, infelizmente, então eu não podia imaginar ter dois processos em execução. Sei que com uma hora extra a atualização de minha página se torna cada vez mais lenta devido aos dados armazenados na memória.
fonte
fonte
-t
opção) e depois mata o processo pelo PID recuperado.Você pode se livrar do processo matando-o:
fonte
capataz iniciar etc iniciar o serviço
fonte
Isso acontece quando você mata o processo do servidor e o arquivo pid não foi atualizado. A melhor solução é excluir o arquivo Server.pid .
Use o comando
fonte
gem install shutup
então vá na pasta atual do seu projeto rails e execute
shutup
# isso matará o processo Rails atualmente em execuçãoVocê pode usar o comando 'shutup' toda vez que quiser
DICLAIMER: Eu sou o criador desta gema
NOTA: se você estiver usando o rvm, instale a gema globalmente
fonte
Provavelmente você suspendeu o servidor por:
^Z
.O quatro número digital que
vim C:/Sites/folder/Pids/Server.pids
sai é a identificação do processo.Você deve
kill -9 processid
substituir a identificação do processo pelos 4 números que o vim (ou outro editor) produziu.fonte
Se você estiver no Windows, basta executar apenas uma etapa como 'rails restart' e digitar novamente 'rails s'. Você está pronto para prosseguir.
fonte
No Windows Rails 5.2, exclua este arquivo
e corra
novamente.
fonte
Corre:
fuser -k -n tcp 3000
Isso interromperá o processo em execução na porta 3000 padrão.
fonte
Acabei de ter esse problema e tentei configurá-lo para uma porta diferente, mas a única coisa que eu precisava fazer era excluir o meu
[app_directory]/tmp/pids/server.pid
e tudo estava bem.fonte
Corre:
no Ubuntu / linux
Ou
ou
fonte