如何解决如何使用名称便宜的cPanel托管ExpressJS应用
我正在尝试使用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!") });
每当我访问mydomain.com时,index.html文件都会像正常情况一样被投放,但是当我访问mydomain.com/test时,却找不到404。查看GET请求时,我的站点似乎正在使用端口443
而不是8080
获取服务器的IP。然后,当我访问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!") });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。