Express:为服务 URL 添加前缀
我正在尝试执行以下操作。 我有一个监听某个端口的服务器(假设4242
)。 重定向到该端口的 URL 为 http://myUrl/prefix
。 所以基本上我需要使用该前缀来服务我的 Express 应用程序。 问题是 Express 使用此 url 来表示目录 dist、public 等: http://myUrl/dist
。而我希望它是 http://myUrl/prefix/dist
。
有可能实现吗?
我尝试在 app.use 中添加前缀,例如: app.use('/prefix/dist', express.static(path.resolve(__dirname, './dist')));
而不是: app.use('/dist', express.static(path.resolve(__dirname, './dist')));
我不知道它是否改变了什么,但我的前端框架是Vue.js
谢谢
I'm trying to do the following.
I have a server that listens to a certain port (let's say 4242
).
The url that redirects to that port is http://myUrl/prefix
.
So basically I need to serve my express app with that prefix.
The problem is that express uses this url for the directories dist, public, etc..:http://myUrl/dist
. Whereas I want it to be http://myUrl/prefix/dist
.
Is it possible to achieve that?
I tried to add the prefix in the app.use, like for example:app.use('/prefix/dist', express.static(path.resolve(__dirname, './dist')));
instead of:app.use('/dist', express.static(path.resolve(__dirname, './dist')));
I don't know if it changes anything, but my front framework is Vue.js
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用以下语句将整个应用程序挂载到该前缀上。
prefix
仅出现在此语句中,而不会出现在应用程序的 Javascript 代码中。但如果应用程序需要知道它,它可以使用app.mountpath
。You can mount your entire app on that prefix with the statement
The
prefix
only appears in this statement, nowhere in the Javascript code for the app. But if the app needs to know it, it can useapp.mountpath
.