Ketika saya menjalankan aplikasi sinatra kecil, saya harus menekan CTRL+C dua kali untuk mematikannya.
== Sinatra/1.0.b telah naik panggung pada 4567 untuk pengembangan dengan cadangan dari Thin >> Server web tipis (v1.2.7 codename No Hup) >> Koneksi maksimum diatur ke 1024 >> Mendengarkan di 0.0.0.0:4567, CTRL+C untuk berhenti ^C>> Berhenti ... == Sinatra telah mengakhiri setnya (penonton bertepuk tangan) == Sinatra/1.0.b telah naik panggung pada 4567 untuk pengembangan dengan cadangan dari Thin >> Server web tipis (v1.2.7 codename No Hup) >> Koneksi maksimum diatur ke 1024 >> Mendengarkan di 0.0.0.0:4567, CTRL+C untuk berhenti ^C>> Berhenti ... == Sinatra telah mengakhiri setnya (penonton bertepuk tangan)
Saya sedang menjalankan:
ubuntu 9.10 (karma)
permata rubi 1.3.6
ruby 1.9.1p376 (revisi 2009-12-07 26041) [i486-linux]
sinatra 1.0.b
tipis 1.2.7
Terjadi pada saya ketika memulai aplikasi gaya kelas dengan Application.run
di config.ru, misalnya.
Ini dulu terjadi pada saya sebelumnya di bawah Cygwin. Pasti ada hubungannya dengan bagaimana Anda memulai aplikasi dan konten file rak Anda. Apa yang saya lakukan adalah:
aplikasimu.rb
Aplikasi kelas < Sinatra:Base
apapun..
akhir
config.ru
membutuhkan 'rubygem'
membutuhkan 'yourapp.rb'
jalankan Aplikasi
dan akhirnya, mulai aplikasi menggunakan file batch atau dari prompt shell Anda:
rackup -s thin config.ru
Saya tidak dapat mereproduksi pada 1.0. Silakan buka kembali jika ini masih menjadi masalah. Terima kasih
Saya mendapatkan masalah ini. Kode saya dapat disederhanakan menjadi ini, dan masih menghasilkan masalah:
require 'sinatra'
class MyServer < Sinatra::Base
get '/test' do
'Hello world!'
end
run! if app_file == $0
end
Saya menjalankan di terminal dengan ruby my_server.rb
. Jika saya menghapus baris run
, maka itu hanya membutuhkan ctrl+c sekali untuk mematikan, tetapi titik akhir tidak dipanggil, alih-alih menampilkan kesalahan ini:
[28/Mei/2016:20:37:15 +0100] "GET /test HTTP/1.1" 404466 0,0005
Itu karena saya mengimpor sinatra
, bukannya sinatra/base
Komentar yang paling membantu
Itu karena saya mengimpor
sinatra
, bukannyasinatra/base