Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: RewriteRule - в случае если файла нет - отправлять на другой адрес за ним.
 
 автор: гость   (19.03.2010 в 07:01)   письмо автору
 
 

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

  Ответить  
 
 автор: ......   (19.03.2010 в 10:06)
 
   для: гость   (19.03.2010 в 07:01)
 

Всмысле редирект должен происходить ?
или как если с mod_proxy или скриптом адрес должен оставаться неизменённым ?

  Ответить  
 
 автор: гость   (19.03.2010 в 19:12)   письмо автору
 
   для: ......   (19.03.2010 в 10:06)
 

Второй случай

  Ответить  
 
 автор: ......   (19.03.2010 в 20:39)
 
   для: гость   (19.03.2010 в 19:12)
 

В доках по apache , есть такие способы проверяить существование файла, по убыванию создаваемой проверкой нагрузки
RewriteCond %{REQUEST_URI} !-U
проверяет есть-ли такой URL
RewriteCond /your/docroot/%{REQUEST_FILENAME} !-f
. Проверяет есть-ли запрашиваемый файл ( на разных серверах REQUEST_FILENAME может быть разным, где-то хватает одного его, без /your/docroot/ )
Третий способ просто использовать CGI-скрипт указанный в ErrorDocument при обработке 404й ошибки

Если всётаки с помощью mod_rewrite , то следующая за проверкой правило будет проверяться только если была успешной проверка. И если не использовать всё так-же CGI-скрипт , то должен быть включён mod_proxy , proxy_http_module, кажется даже ещё proxy_connect_module но это я точно не помню.)

c mod_rewrite получится примерно пару таких строк

RewriteBase /images/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRile ^(.+\.(jpe?g|gif|png))$ http://.........../images/$1 [NC,P]

или тоже похоже но с перекачками файлов скриптом третья строка будет примерно такой
RewriteRile ^(.+\.(jpe?g|gif|png))$ CGI-script.php?addr=$1 [NC]
(не проверял , просто изобразил примерно ))
в обоих случаях двойная нагрузка на сервер, со скриптом можно какое-нибудь организовать кэширование, на mod_proxy насколько знаю с кэшированием не очень.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования