我想用nginx来提供静态文件。 我通过wget获取静态页面,目录树的根是页面协议。 即对于http://www.example.com/ :
HTTP
└──www.example.com
└──index.html
我想能够提供这样的网页: http : //website.com/page/ http://www.example.com/呈现http://website.com/page/http/www.example。 COM /
这是什么nginxconfiguration?
更新:我试过这个: rewrite ^(.+)://(.+)$ $1/$2 last; 但它不起作用
如果我理解你是正确的,那么你很可能正在寻找像Squid这样的代理服务器,Nginx是一个反向代理服务器,并不适用于这种情况。
正如你可以在location指令docs中看到的那样: 在对“%XX”forms编码的文本进行解码之后,对标准化的URI执行匹配,parsing对相对path组件“。”和“..”的引用,并且可能的压缩两个或多个相邻的斜线成一条斜线。
您可以防止nginx在server块级别合并斜杠merge_slashes ,虽然我会build议谨慎做这样的事情,并会一般build议反对它。
您的正则expression式与规范化的URI不匹配。 您将需要使用:
rewrite ^(.+):/(.+)$ $1/$2 last;
作为一个补充build议,你可能想看看你的正则expression式来replacegenerics. 通过更具体的类或集来捕捉所有的字符,所以它的行为被更好地定义。