Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Настройка .htaccess

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: получение ссылки на несуществующий файл.
DeVlas
Отправлено: 23 Июля, 2014 - 10:42:23
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2014  


Помог: 0 раз(а)




Здравствуйте уважаймые форумчане, подскажите пожалуйста.
Как настроить htaccces что бы в случае отсутствующего файла в коде он выдергивал ссылку на файл которого нет и передавал ее в скрипт обработки.
Более детально . есть файл news/news.php
В нем есть такая вот строка <img src="../image/thumbs/1.jpg" - по ссылке файла нет.
Нужно в случае если файла нет. Перенаправлять на скрипт который будет создавать привьюшку и класть в папку /thumbs с таким же именем .Но в скрипт нужно как то передать ссылку или хотя бы названия файла.
Как это сделать я ни как не могу понять.
Вот мой htaccess
AddDefaultCharset utf8
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*\.(jpg)$ 1/tryCatchImage.php?=$1 [L,QSA]

Подскажите решение вопроса?
на всякий случай вот структура сайта.
www/
-index.php
-htaccess
-image/
--original
--thumbs
-1/
--tryCatchImage.php
-news/
--news.php
 
 Top
maragon
Отправлено: 23 Июля, 2014 - 22:27:12
Post Id



Посетитель


Покинул форум
Сообщений всего: 340
Дата рег-ции: Февр. 2011  


Помог: 2 раз(а)




Перед тем как показывать людям картинку, проверяйте её:
news/news.php

CODE (htmlphp):
скопировать код в буфер обмена
  1. $filename = "1.png"; //Название картинки
  2. if(file_exists("image/thumbs/".$filename .""))
  3. { //выводим картинку
  4. $img = "/image/thumbs/".$filename ."";
  5. } else {
  6. //ваш скрипт - дергаем превьюшку
  7. $img = "/image/thumbs/new-".$filename ."";
  8. }
  9. И выводим:
  10. <img src="<? echo $img; ?>">
  11.  


Если я так Вас понял.. то чуть-чуть разжувал. Улыбка


-----
https://vk[dot]com/tvoycase_ru - Твой чехол со своим дизайном
 
 Top
DeVlas
Отправлено: 24 Июля, 2014 - 13:15:41
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июль 2014  


Помог: 0 раз(а)




maragon пишет:
Перед тем как показывать людям картинку, проверяйте её:

Если я так Вас понял.. то чуть-чуть разжувал. Улыбка

Спасибо большое за ответ.

На всякий случай хочу уточнить. Допустим мы с генерировали привьюшку и положили ее в папку /image/thumbs, после обновления страницы,скрипт генерации привьюшки не запустится второй раз, просто пройдет проверку на наличие по этому пути картинки и отдаст ее?
Просто одно из условий данной задачи
"сервис будет довольно-таки нагруженным. Мы бы хотели, чтобы генерация превьюшки происходила только один раз, и при повторном обращении картинка отдавалась с диска. При этом мы бы не хотели, чтобы сервер (мы используем nginx для статики) запускал для этого медленный PHP-скрипт."


Что бы не вводить Вас в заблуждение
Сама задача :
Итак, предположим, что разрабатывается сайт, на сайт будут загружаться картинки и в некоторых разделах надо выводить их уменьшенные версии (thumbnails, превьюшки). Генерировать превьюшки в момент загрузки нельзя, так как при смене дизайна или появлении нового раздела нам понядобятся картинки других размеров и мы не можем заранее угадать, каких именно.

Потому мы хотим сделать REST-сервис для генерации превьюшек. Сервис работает примерно так: где-то в коде шаблона мы пишем:

<img src="<?= Thumbnail::link('/image/uploads/1234567.png', 400, 300, Thumbnal::MODE_CROP) ?>">
и генерируется ссылка (например: /thumbnail/1.png), которая вернет уменьшенную картинку, шириной не более 400px, высотой не более 300.

Как все сделать мне понятно, но до Вашего ответа думал что отдать путь\имяфайла в скрипт нужно и можно только через htaccess , а сделать это через него у меня не получается..
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB