我对nginx完全陌生,我被要求找到一种方法来服务根据缩放级别分离的Map瓷砖。图像文件结构类似于~/data/images/7/65/70.png
,其中7是缩放级别,65和70是lon-lat值。文件夹65包含许多文件,诸如71.png、72.png等。
我已经正确安装了Nginx,我可以得到Welcome to nginx
消息。我已经按照http://nginx.org/en/docs/beginners_guide.html
中的说明创建了/data/www
和/data/images
目录。我把index.html文件放在/data/www
下,把tile图像放在/data/images
下。然后我修改了配置文件,在http标签中添加了以下行:
server {
location / {
root /data/www;
}
location /images/ {
root /data;
}
}
在重新加载配置文件并在浏览器上输入localhost后,我既无法获得index.html文件,也无法看到图像。
我尝试做的是当我输入以下内容时显示图像:
http://localhost/1.0.0/basemap/7/65/70.png
- 7:指示第7缩放级别的文件夹
- 65:指示纬度的文件夹
- 70.png:表示经度的文件(文件夹65包括许多png文件)
我错过了什么?
3条答案
按热度按时间pengsaosao1#
好吧,让我解释一下,你已经有了一个本地主机服务器,它在一个名为
default
的文件中定义,这个文件会导致“欢迎使用nginx”或其他内容出现,我相信你不能用同样的server_name
创建一个新服务器,让我们删除它,让你的本地主机只提供这些图像,sites-enabled
中删除default
文件,如果您想要恢复它,它仍然存在于sites-available
中。* (注意,sites-enabled
中的所有文件都是来自sites-available
中文件的符号链接)*sites-available
中创建一个新文件,并将其命名为任意名称,例如images-app
images-app
文件中创建新的服务器,我假设应用程序的根目录位于名为/data
的文件夹中,当然,您将Map到您自己的服务器结构。sites-enabled
并启用我们在sites-available
中创建的站点k97glaaz2#
在我的例子中,我只是编辑了
/etc/nginx/sites-enabled/default
文件。我添加了以下配置:
并将图像放置在
/data/images
下:URL工作:http://localhost/images/example.png
我使用VS代码作为超级用户。(我知道这很糟糕,但我接受风险)它对根访问文件编辑有很大帮助:
ddrv8njm3#
我也是nginx的新手,这是我的解决方案,与Mohammad AbuShady的答案相似:
sites-enabled/default
/etc/nginx/conf.d/
中创建whatever.conf
原因是:
sites-enabled/default
定义了服务器这是听80生根与/var/www/html
nginx.conf
文件包含其他conf文件注意权限
my.conf的第一个版本是/home/myusername/上的root,但会得到403 Forbidden错误,请检查错误日志: