Ubuntu 18.04下Nginx实现跨网站图片别名访问的配置求助
Ubuntu 18.04下Nginx实现跨网站图片别名访问的配置求助
当然可以实现啦!在同一台Ubuntu 18.04服务器上用Nginx的话,有几种简单的方法能满足你的需求,我给你详细说说:
方法一:通过Nginx配置直接映射(推荐)
打开website2对应的Nginx配置文件(一般在/etc/nginx/sites-available/website2.conf,或者你自定义的配置路径),在server块里添加一段精确匹配的location规则:location = /image_abcd.webp { alias /home/website1/public_html/image_abc.webp; # 可选:添加缓存头部优化浏览器缓存体验 expires 30d; add_header Cache-Control "public, immutable"; }这段配置的作用是:当用户访问website2的
image_abcd.webp时,Nginx会直接返回website1目录下的image_abc.webp文件。配置完成后,记得重新加载Nginx使配置生效:sudo systemctl reload nginx方法二:创建Linux软链接
如果你不想改动Nginx配置,也可以用文件系统的软链接来实现。登录服务器后,先切换到website2的public_html目录:cd /home/website2/public_html然后创建软链接指向目标图片:
ln -s /home/website1/public_html/image_abc.webp ./image_abcd.webp这样用户访问website2的
image_abcd.webp时,系统会自动指向website1的那张图。不过要注意,Nginx运行的用户(通常是www-data)需要有访问/home/website1/public_html目录的权限,你可以用下面的命令调整权限:sudo chmod 755 /home/website1/public_html sudo chmod 644 /home/website1/public_html/image_abc.webp
两种方法各有优势:Nginx配置的方式更灵活,适合后续扩展多个映射规则;软链接的方式更轻量化,不用修改服务器配置。你可以根据自己的需求选择~
备注:内容来源于stack exchange,提问作者Andrew
相关产品推荐
相关产品推荐

