我是Nginx的新手,我被要求找到一种方法来提供根据缩放级别分离的Map Tiles.图像文件结构类似于〜/ data / images / 7/65 / 70.png,其中7是缩放级别,65和70是lon-lat值.文件夹65包含许多文件,例如71.png,72.png等.
我已经正确安装了Nginx,我可以获得欢迎使用Nginx消息.我已按照http://Nginx.org/en/docs/beginners_guide.html中的说明操作,并创建了/ data / www和/ data / images目录.我已将index.html文件放在/ data / www下,并将图像放在/ 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文件)
我错过了什么?
最佳答案
好的,让我解释一下,你已经有了一个localhost服务器,它在一个名为default的文件中定义,该文件导致“欢迎使用Nginx”或者出现的东西,我相信你不能创建一个新的服务器使用相同的server_name,让我们删除它并使您的localhost只提供那些图像,
>首先,我们需要从已启用网站中删除默认文件,如果您想要将其恢复,它仍将存在于网站内部. (请注意,启用站点内的所有文件都只是来自站点内可用文件的符号链接)
>我们在网站内创建一个新文件 – 可以随意调用它,例如images-app
>在images-app文件中创建新服务器,我假设应用程序的根目录在名为/ data的文件夹中,您当然会将其映射到您自己的服务器结构.
server {
server_name localhost;
root /data;
index index.html;
location / {
try_files $uri =404;
}
}
>现在我们转到启用网站并启用我们在网站内创建的网站
sudo ln -s /etc/Nginx/sites-available/images-app /etc/Nginx/sites-enabled/
>确保所有Nginx配置都正确
sudo Nginx -t
>如果没有错,我们可以继续并重新加载Nginx设置
sudo service Nginx reload