nginx将虚拟目录重写为文件

时间:2012-09-09 18:47:08

标签: nginx virtual-directory

这应该很容易,但是我在墙上撞了我的头。如果我收到www.mysite.com/mypath的请求,我想提供www.mysite.com/myotherpath/thisfile.html的内容。如何使用nginx配置执行此操作。

2 个答案:

答案 0 :(得分:12)

location = /mypath {
    try_files /myotherpath/thisfile.html =404;
}

答案 1 :(得分:9)

在正确的位置块中使用重写指令。例如,您有基本位置来处理所有请求

location / {
    /*your rules here*/
}

您需要添加另一个块,这将用于处理特定路径

location /mypath {
    rewrite ^/mypath$ /real/path/to/file/thisfile.html; 
}

同样,对于您的服务器在thisfile.html默认的块中进行思考,您可以使用try thisfile.html指令

官方网页Official Nginx RewriteModule page

上的解释很清楚