搜索

首页  >  问答  >  正文

php - laravel部署到linux服务器上,图片无法显示出来,如果默认路径不设置public目录则可以,但是css样式会乱

服务器环境是LNMP的环境,
电脑本机是LAMP的环境,

图片目录是public的同级目录;

图片路径在本机的话是可以显示的,但是放到服务器上,外部访问是无法显示图片的,除非我把nginx 的默认访问路径设置成 public的上级目录,但这样子css样式路径就出错了;

图片的路径是 www.xxx.com/../uploads/asdads.jpg 大概是这样的。
在LAMP的环境是没问题的,放到服务器就不行了,哪里出问题了?

我在怀疑就是nginx的设置少设置了。所以想问一下。


路径在本机没问题,我发现在浏览器访问服务器的时候,似乎会把../给忽视掉,我已经将保存文件夹放在了public的目录下了,

怪我咯怪我咯2755 天前541

全部回复(3)我来回复

  • 怪我咯

    怪我咯2017-05-16 13:05:33

    根据你的描述,我猜是路径的设置有问题,你可以在浏览器里用开发模式看一下,图片和Js的路径分别指向哪,和你预期的是不是一样。

    回复
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-16 13:05:33

    首先看下uploads目录是否有读写权限,其次会忽略的话,试试绝对路径?

    回复
    0
  • 世界只因有你

    世界只因有你2017-05-16 13:05:33

    • 确认下文件名是否正确

    • 公共文件可直接在nginx中指定绝对路径

    server {
        #忽略部分代码
        location /public/ {
            alias  "D:/www/code/public/";
        }
        
        location / { ... }
        #忽略部分代码
        
    }

    回复
    0
  • 取消回复