[英]Browser URLs and HTTP requests
我目前正在构建一个Web组合,其中包含我过去制作的许多较小的Web应用程序。 在路线(/)处,您会找到一个页面,其中包含指向其他较小Web应用程序的链接。 例如,有一个路由链接(/棋盘游戏),它带您到我之前制作的小型棋盘游戏网络应用程序。
我正在努力的是这个。 较小的网络应用棋盘游戏将html,css和javascript提供给不包含前缀路由(/棋盘游戏)的路由。 因此,当棋盘游戏页面请求(/css/style.css)时,由于内容实际上位于(/board-game/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/;
}
}
}
您需要将路径重写为位置的一部分,例如:
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/
}
}
}
您可能需要稍微进行一下匹配,但这是一般的想法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.