我目前正在构建一个网络组合,它结合了我过去制作的许多较小的web应用程序。在路径(/)中,您可以找到一个带有链接到其他较小的web应用程序的页面。例如,有一个链接到路由(/棋盘游戏),它带你到我在过去制作的小型棋盘游戏网络应用程序。
我在纠结的是这个。较小的web应用程序板-游戏服务它的html,css和javascript的路线,不包括前缀路由(/棋盘游戏)。因此,当棋盘游戏页面请求(/css/style.css)时,不会加载任何内容,因为内容实际上位于(/board- page /css/style.css)。
我的问题是这个。是否有办法将这些请求重新路由到适当的路径?我想避免重写这些小项目的任何部分。有什么建议吗?谢谢。
另外,这是我当前的nginx.conf文件。
worker_processes 1;
events {
worker_connections 1024;
}
http {
upstream portfolio {
server portfolio-svc:8080;
}
upstream board-game {
server board-game-svc:8080;
}
server {
listen 80;
location / {
proxy_pass http://portfolio/;
}
location /board-game {
proxy_pass http://board-game/;
}
}
}发布于 2017-11-10 20:25:40
您需要重写路径作为位置的一部分,例如:
worker_processes 1;
events {
worker_connections 1024;
}
http {
upstream portfolio {
server portfolio-svc:8080;
}
upstream board-game {
server board-game-svc:8080;
}
server {
listen 80;
location = / {
proxy_pass http://portfolio/;
}
location = /board-game {
proxy_pass http://board-game/;
rewrite ^(.*)board-game(.*)$ http://board-game/$2 permanent;
sub_filter /css/ /board-game/css/
}
}
}你可能需要玩一些匹配,但这是一般的想法。
https://stackoverflow.com/questions/47230068
复制相似问题