nginx + apache + ubuntu не отображаются картинки в phpmyadmin?

В связке nginx + apache на ubuntu, не отображатся картинки при заходе в phpmyadmin, это связано с тем, что phpmyadmin находится в директории /usr/share/phpmyadmin и для него необходимо прописать отдельную секцию location в концигурационном файле описания виртуального хоста, иначе nginx пытается искать их в директории сайта.

Если нет картинок в phpmyadmin, то заходим в /etc/nginx/sites-available/ и переходим к редактированию файла виртуального хоста или default (зависит от того стали ли Вы разибвать конфигурационные файлы виртуальных хостов на отдельные).

nano /etc/nginx/sites-available/joyit.ru

После перенаправления на back-end небходимо добавить location для phpmyadmin.

 

# Перенаправление на back-end

location / {
proxy_pass http://localhost:8080;
include /etc/nginx/proxy_params;
}

# location для phpmyadmin

location ~* (?:/phpmyadmin/).+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2$

root /usr/share/;
index index.html index.php;
expires 30d;
}

После чего перезагружаем nginx

service nginx restart

Теперь картинки в phpmyadmin будут отображаться корректно, т.к. nginx теперь знает их расположение.

Комментарии:

Разработано для Disqus