我正在學習Ruby on Rails。目前我正在本地機器上進行基本開發。當我在終端(OS X)中運行rails server
時會發生什麼?我只想了解Rails體系結構在做什麼以及運行哪些Ruby腳本。當我在本地啓動rails服務器時會發生什麼?
1
A
回答
3
rails server
所做的一件事是加載Rails應用程序所需的所有依賴關係/寶石,或者至少將它們設置爲稍後在需要時自動加載。這有時稱爲「啓動」或加載「Rails環境」。當您運行other rails commands如rails console
或rails runner
時,也會執行此操作。
它還啓動一個名爲WebRick的Web服務器。 Web服務器是一段ruby代碼,運行時,它將自己綁定到計算機上的端口(默認端口爲3000),並開始監聽該端口上的傳入HTTP請求。
當請求進入時(例如用戶加載頁面的HTTP GET請求),Web服務器與rails一起處理請求。我不確定工作是如何劃分的,但是Web服務器應該照顧底層的東西,比如閱讀HTTP標題和導軌,應該注意確定將請求路由到哪個控制器和動作(使用你的路由.rb文件)。我認爲做這項工作的rails組件叫做action_dispatch,它在actionpack gem中。
相關問題
- 1. 當我停止rails服務器時,我的elasticsearch索引會發生什麼?
- 2. 當我啓動服務器本身時,爲什麼Tomcat不啓動連接器?
- 3. 當我在域服務中寫Me.objectcontext時會發生什麼?
- 4. 當Android重新啓動服務時,在Android服務中啓動的線程會發生什麼?
- 5. 當您在Android中啓動兩次相同的服務時會發生什麼?
- 6. rails:當在Gemfile中指定兩個Web服務器時會發生什麼
- 7. Rails本地服務器無法啓動
- 8. meteor當服務器丟失時會發生什麼
- 9. 啓動/ bin/sh時會發生什麼?
- 10. 當我ping 127.0.0.1時會發生什麼
- 11. 當我編譯時會發生什麼?
- 12. 當我打電話給ajax時,服務器端會發生什麼?
- 13. 如果服務多次啓動會發生什麼?
- 14. 服務啓動多次後會發生什麼
- 15. 當我移動到本地服務器時,PHP映像路徑發生變化
- 16. 當我啓動它時,服務器RMI會自動停止
- 17. 當你從C啓動A到B時會發生什麼?
- 18. 當java程序啓動時會發生什麼?
- 19. 當Rails服務器啓動時啓動MySQL?
- 20. 當Ubuntu服務器啓動時,Supervisor不會自動啓動
- 21. C++ boost:asio當會話類被刪除時服務器類會發生什麼
- 22. 當我啓動Rails服務器時出現ExecJS :: RuntimeUnavailable錯誤
- 23. 當PowerManager.goToSleep被調用時,Android服務會發生什麼?
- 24. 當在android中從服務器下載網絡連接時會發生什麼?
- 25. 爲什麼我總是需要重新啓動Rails服務器?
- 26. 重新啓動後發生服務器修改,爲什麼?
- 27. 當我在本地運行頁面時Google Analytics會發生什麼?
- 28. 每當我做出更改時,Rails服務器都會重新啓動
- 29. 當Node.js服務器重新啓動時套接字ID會發生什麼變化?
- 30. 爲什麼我在啓動tomcat服務器時遇到ClassNotFoundException?