好的,所以我讓我的socket.io服務器在不同的端口上偵聽,但爲了使它與https一起工作,我需要讓它聽不到傳入一個端口(默認)。 (它工作正常在不同的端口加載與http,但我需要它在https上工作)socket.io.js 404(使用Apache到主機站點)
我的項目工作正常,客戶端可以連接併發送數據罰款。但是,我將該網站移到了我的主域,該域具有SSL證書。該網站通過https加載所有內容,因此無法加載http版本socket.io.js
但是,現在我已將它切換到var client = require("socket.io").listen().sockets;
而不是偵聽不同的/特定的端口,但它仍然無法工作。不是給我一個連接錯誤,它根本不包括文件。
我的恐懼是,我最終需要重建我的整個網站,以通過node.js託管我的文件,我寧願不必這樣做。
我沒有使用任何其他模塊比mysql-node
和socket.io
,並且我也希望,如果能夠保持這種方式。我是node.js的新手,所以我很抱歉,如果有一個明顯的答案,我不知道。
但是,我環顧四周,似乎無法在任何地方找到答案。或者,至少有一個明確的答案。
我會更好使用websockets
而不是socket.io
? 如果是這樣,我該如何去做這件事?誠實地說,我更願意重建我的節點應用程序,而不是重新制作我的網站。
我,包括客戶端的socket.io.js文件像這樣:
<script src="https://mysite/socket-io/socket.io.js"></script>
但當然,404因爲它不是一個實際的文件,該文件是我的Apache服務器上。在我的public_html
目錄中沒有名爲socket-io
的文件夾/目錄,所以對我來說很有意義。
但是,我怎麼能得到這個工作?我需要通過node.js託管我的文件還是使用HTML5 websockets更好?我的網站用戶使用移動設備的人數相當多,所以我必須確定它也適用於移動設備。
爲什麼你使用兩個獨立的web服務器(Apache和node.js)來創建你的網站?你如何建立架構?您是否嘗試使用Apache服務器或node.js服務器來提供socket.io.js文件? – jfriend00