[英]How to host an ExpressJS app with namecheap cPanel
我正在嘗試使用 namecheap 的 cPanel 和 cloudflare 托管我的網站,該網站是用 ExpressJS 編寫的,但似乎無法弄清楚如何部署它。 Node.js 應用程序沒有選項,因此我使用我的 cPanel 終端來托管它。 這是我用於測試的基本 ExpressJS 代碼:
const express = require('express')
const https = require("https")
const fs = require("fs")
const app = express()
const cert = fs.readFileSync("./cert.crt")
const ca = fs.readFileSync("./ca.ca-bundle")
const key = fs.readFileSync("./private.key")
let options = {
cert: cert,
ca: ca,
key: key
}
let server = https.createServer(options, app)
app.get('/test', (req, res) => {
res.send('Hello World!')
})
server.listen(8080, 'shared ip', () => { console.log("Hosting!") });
每當我 go 到 mydomain.com 時,index.html 文件都會像正常一樣提供服務,但是當我 go 到 mydomain.com/test 時,我會收到 404 not found。 查看 GET 請求時,我的網站似乎正在獲取我服務器的 IP 端口443
而不是8080
。 然后當我 go 到 mydomain.com:8080/test 我得到ERR_SSL_PROTOCOL_ERROR
。 我不完全確定如何解決這個問題。
端口 443 是默認用於網站的標准 TCP 端口嘗試更改為server.listen(process.env.PORT || 80, () => { console.log("Hosting;") });
或server.listen(443, 'shared ip', () => { console.log("Hosting;") });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.