Express:为服务 URL 添加前缀

发布于 2025-01-18 10:23:54 字数 530 浏览 0 评论 0原文

我正在尝试执行以下操作。 我有一个监听某个端口的服务器(假设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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

是你 2025-01-25 10:23:54

您可以使用以下语句将整个应用程序挂载到该前缀上。

express().use("/prefix", app).listen(4242);

prefix 仅出现在此语句中,而不会出现在应用程序的 Javascript 代码中。但如果应用程序需要知道它,它可以使用 app.mountpath

You can mount your entire app on that prefix with the statement

express().use("/prefix", app).listen(4242);

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 use app.mountpath.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文