2010-07-07 4 views
3

При перемещении сайта из промежуточной среды в производственную среду файлы изображений .png не отображаются. При обращении к изображению напрямую, сообщает firefox:мой сайт отказывается обслуживать .png файлы

Изображение (путь к изображению) не может быть отображено, так как оно содержит ошибки.

Я проверил mime.types в моем апача конфигурации, и содержит линию для

изображение/PNG PNG

Кто-нибудь знает, что может быть причиной этого? Я никогда не сталкивался с этим раньше.

+0

Это происходит только с PNG или любыми другими файлами изображений? – Gumbo

+0

Вы пытались открыть изображение (не удаленно, локально)? Является ли программное обеспечение попыткой вывода изображения во время выполнения? (например, PHP или Java) –

+0

Что такое операционная система на сервере? –

ответ

3
  1. проверки .htaccess файл URL Rewrite или любое разрешение/ограничения и т.д.

  2. Загрузить любое изображение png и попытаться открыть его браузер, используя прямой путь к ur png-файлу. например, http://localhost/images/test.png (если он работает нормально, это означает, что ваш процесс apache полностью завершен png)

  3. Проверьте, не создана ли какая-либо символическая ссылка на каталог изображений на вашем предыдущем сервере (хосте).

  4. проверить права на доступ к каталогу.

  5. очистить кэш браузера.

  6. проверить ваш файл виртуального хоста app httd.conf на вашем предвечном хосте. может быть ранее, был создан какой-то псевдоним или что-то в этом роде. httpd.conf: ...

    <VirtualHost www.mydomain.com:80> 
          ServerAdmin [email protected] 
          DocumentRoot /home/www/www.mydomain.com/htdocs 
          ScriptAlias /cgi-bin/ /home/www/www.mydomain.com/cgi-bin/ 
          ServerName www.mydomain.com 
          Alias /images/ /home/www/www.mydomain.com/images/ 
          Alias /pictures/ /home/www/www.mydomain.com/upload/ 
          Alias /errors/ /home/www/www.mydomain.com/errors/ 
          Alias /catalog/ /home/www/www.mydomain.com/catalog/ 
          ErrorLog /home/www/www.mydomain.com/logs/error_log 
          CustomLog /home/www/www.mydomain.com/logs/access_log 
          ScriptLog /home/www/www.mydomain.com/logs/script_log 
          ErrorDocument 403 /errors/403.html 
          ErrorDocument 404 /errors/404.html 
          ErrorDocument 500 /errors/500.html 
        </VirtualHost> 
    

дайте мне знать, если это работает или нет

2

Если ваше изображение является реальным: возможно, изображение было повреждено во время FTP-передачи (неполная или плохая/недвоичная передача). Загрузите его с сервера и посмотрите на него.

Если ваше изображение является виртуальным или сгенерировано с помощью скрипта: отправьте код, чтобы мы могли посмотреть его! Это часто случается с PHP, если у вас есть некоторые символы перед открывающим тегом <?php.

+0

спасибо, что ты был прав. Filezilla был не в режиме авто, а в режиме ASCII. – user373396

1

Может быть много вещей, к сожалению:

  • Проверьте файл разрешения на файл, и убедитесь, что апач может читать их
  • Является ли это «фактический» файл, или он Выходец из DB или аналогичный? Если это происходит из БД или кода, исследуйте фактическую строку, чтобы убедиться, что контент генерируется должным образом. Если есть ошибки, то они испортят вывод изображения
  • Файл может быть фактически коррумпирован (попробуйте повторно загрузить)
0

в комментарии файл конфигурации говорят

«EnableSendfile должен быть выключен при обслуживании от сетевых монтажа файловых систем или если поддержка этих функций в противном случае нарушается в вашей системе.»

, который был для меня проблемой.

4

Я решил ту же проблему, что и прописные буквы в имени файла. все мои .png-файлы имели капитальные суффиксы .PNG. сделал все в нижнем регистре, и он сработал.

+0

Это странно .. Но это работает – Satty

Смежные вопросы