文件真实路径:
http://abc.com/home/e/4/chmqq7/virtual/test.txt想要的访问路径:
http://abc.com/test.txt文件路径里面的 /e/4/chmqq7 和test.txt 都是动态的
有哪些实现方式,rewrite该怎么写?
文件真实路径:
http://abc.com/home/e/4/chmqq7/virtual/test.txt想要的访问路径:
http://abc.com/test.txt文件路径里面的 /e/4/chmqq7 和test.txt 都是动态的
有哪些实现方式,rewrite该怎么写?
你可以这么写
server {
listen 80;
server_name localhost;
location / {
alias /;
}
}这样你就可以根据服务器的文件位置来访问你想要访问的文件了
前提是文件都放在/目录下
想要的访问路径:http://abc.com/test.txt
如果是访问静态资源的话,这样的URL不太好,容易与前端路由混淆,建议加一个 static 前缀,访问 test.txt 时应该这样:
http://abc.com/static/test.txt基于此,假设你服务器放文件的目录是 /home/static,nginx 这样配:
location /static {
alias /home/static;
}4 回答968 阅读
2 回答713 阅读✓ 已解决
1 回答643 阅读✓ 已解决
3 回答798 阅读
3 回答784 阅读
2 回答617 阅读
1 回答770 阅读
这个要看你动态路径核心是要解决什么问题。
其实你这个可以认为是一种短路径的处理,只是短路径服务的地址还是本机地址而已。
其实还有一种更高级的处理,比如对文件的访问,采用对象存储,这样其实原始路径只是一种文件对象存储的一个可能属性,访问完全可以用另外的体系去访问。