我测试了nginx但是遇到了严重的问题。不知怎的,位置标签没有抓住我的uri。当浏览器或我手动尝试访问我的localhost上的/favicon.ico时,它只会抛出404错误。配置如下所示:
server {
listen 80;
server_name localhost;
root www;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
index index.html index.php;
}
location = /favicon.ico {
alias alias /assets/images/favicon.ico;
}
...错误日志如下所示:
2014/01/17 00:05:18 [错误] 7408#10036:* 82 CreateFile()“C:\ Users \ user \ Webb \ nginx / www / favicon.ico”失败(2:FormatMessage()错误:(15105)),client:127.0.0.1,server:localhost,request:“GET /favicon.ico HTTP / 1.1”,host:“localhost”
日志证明了位置块被忽略了,因为路径nginx查找文件不是指向别名的路径。
答案 0 :(得分:0)
AFAIK nginx别名是这样的:
alias <the base path>
表示用它告诉nginx URI中第一个“/”左边的部分。
例子。假设我在/ var / www / html / images中有我的图像,而我的应用程序将apic.jpg称为http://app.com/pictures/apic.jpg,那么我所做的就是:
location ^/pictures {
alias /var/www/html/images;
}
希望这会有所帮助。