Сервер nginx не может отображать изображения из бэкэнда - PullRequest
0 голосов
/ 11 сентября 2018

Веб-сайт перестал показывать изображения (показывает неработающую ссылку на изображение).

Имеется два факта:

Но, если я скопирую эту ссылку в веб-браузер, в случае Mozilla я вижу, что "изображение" ссылка на изображение "не может быть отображенопотому что он содержит ошибки ".

Факт номер три:

  • Если я запускаю копию этого сайта на localhost под apache2 (задняя и передняя), изображения отображаются правильно.Вот почему я склонен думать, что проблема где-то в nginx.

Факт номер четыре:

  • Другая информация, такая как текст, который также исходит из бэкэнда, есть и хорошо.

Есть предложения?

UPD.Код для отображения новостей (каждая новость имеет изображение)

<?php
$datalayer = new \DataLayer\DataLayer();
$page = array_key_exists('page', $parameters) ? $parameters['page'] : 1;
$count = array_key_exists('count', $parameters) ? $parameters['count'] : 8;
$request = new \DataLayer\Main\Requests\GetNews($page, $count);
$type = array_key_exists('type', $parameters) ? $parameters['type'] : 'horizontal';

$news = $datalayer->processRequest('getNews', $request)['data'];
?>


<div class="news8 <?=($news->Page == $news->TotalPages ? " last" : "")?>">
  <?php foreach($news->News as $key => $row): ?>
  <a class="container" href="/?news=<?=$row->Id?>">
      <img class="header-image" src="<?=($row->Image ? './?image='.$row->Image.'&size=preview' : './media/imgs/ico-no-img.png')?>" />
      <div class="news-info">
          <div class="news-header"><?=$row->Title?></div>
          <div class="news-date"><?=date ("d.m.Y", time($row->Created))?></div>
      </div>
  </a>
  <?php endforeach; ?>

Config

ssl.conf
#
# HTTPS server configuration
#

server {
     listen       443 ssl http2 default_server;

     server_name  www.hostname.example;
     root         /path/to/root;
     index       index.php index.html;

     ssl_certificate hostname_example.crt;
     ssl_certificate_key  hostname_example.key;

     ssl_session_cache shared:SSL:1m;
     ssl_session_timeout  10m;
     ssl_ciphers HIGH:!aNULL:!MD5;
     ssl_prefer_server_ciphers on;

     # Load configuration files for the default server block.
     include /etc/nginx/default.d/*.conf;

     location / {
     }

     error_page 404 /404.html;
         location = /40x.html {
     }

     error_page 500 502 503 504 /50x.html;
          location = /50x.html {
     }

     location ~ \.php$ {
         fastcgi_cache  portalName;
         fastcgi_cache_valid 200 301 302 304 60m;
         fastcgi_cache_key "$request_method$http_if_modified_since$http_if_none_match$host$request_uri";
         fastcgi_pass_header "X-Accel-Expires";    
         fastcgi_pass 127.0.0.1:9000;
         fastcgi_index index.php;
         fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
         fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match;
         fastcgi_param HTTP_IF_MODIFIED_SINCE $http_if_modified_since;
         fastcgi_param HTTP_X_REAL_IP $remote_addr;
         include        fastcgi_params;
     }
}
...