如何在共享托管服务器Namecheap的子文件夹上部署Node.js + React.js + Passenger?

问题描述

我正在尝试在子文件夹的Namecheap主机上部署使用Node + React构建的应用程序。

我尝试了this stackoverflow questionthis questionthis link解决方案,它们都指出:

  1. "homepage":"\folder\"添加到package.json
  2. <base href="%PUBLIC_URL%/">添加到index.html或
  3. 使用ENV变量

他们都没有为我工作。我正在Namecheap上托管该应用,尝试了几个小时后,支持人员无法帮忙。

应用程序结构为: 后端/ 客户/

构建文件夹位于客户端文件夹内

Passenger文件具有以下配置:

# DO NOT REMOVE. CLOUDLINUX PASSENGER CONfigURATION BEGIN
PassengerAppRoot "/home/user/app/backend" # APP LOCATION
PassengerBaseURI "/folder" # APP URL
PassengerNodejs "/home/user/nodevenv/app/backend/10/bin/node" # NODE URL
PassengerAppType node # APP TYPE
PassengerStartupFile server.js # APP MAIN FILE
PassengerAppLogFile "/home/user/app/backend/passengar.log"
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONfigURATION END

获取路由指向client / build文件夹,并将其发送到呈现index.html:

app.use('/folder/',express.static(path.join(root,"..","client","build")));

app.get("/folder/*",(req,res) => res.sendFile(path.join(root,"build","index.html")));

仍然,文件未呈现,并显示以下错误消息:

Manifest: Line: 1,column: 1,Syntax error.
GET https://myurl.com/folder/manifest.json 404
GET https://myurl.com/folder/static/css/main.1cf94b61.chunk.css net::ERR_ABORTED 404

应该怎么做才能配置要从子文件夹提供服务的应用程序? 我想念什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)