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

Форум Apache

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

 

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

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

тема: Правило для перехвата обращения к файлам
 
 автор: Alph[p]a   (13.05.2011 в 14:35)   письмо автору
 
 

Есть у меня ссылка вида
http://localhost/file/2011/05/1.pdf

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

вот содержание htaccess

# отдаем все документы в utf-8
AddType "text/html; charset=utf-8" .php
AddDefaultCharset utf-8

php_value display_errors 0
php_value display_startup_errors 0

# обрабатываем ошибки
ErrorDocument 404 /index.php?run=402
ErrorDocument 403 /index.php?run=403 
ErrorDocument 400 /index.php?run=404 
ErrorDocument 500 /index.php?run=404

# url преобразования
RewriteEngine On  
RewriteCond %{QUERY_STRING} ^q=(.*) 
RewriteRule (.*) index.php?run=$1&q=%1 [L] 
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule (.*) index.php?run=$1 [L]

  Ответить  
 
 автор: cheops   (13.05.2011 в 15:23)   письмо автору
 
   для: Alph[p]a   (13.05.2011 в 14:35)
 

>чтобы ссылка перехватывалась и шла на скрипт
>а уж потом опять на реально существующий файл
Пожалуй что никак, правила будут каждый раз перехватывать обращение к файлу и перебрасывать посетителя на скрипт. Как вариант, этим же скрипто и отдавайте файл.

PS А какую задачу решаете? Может есть обходные пути проблемы?

  Ответить  
 
 автор: Alph[p]a   (13.05.2011 в 15:27)   письмо автору
 
   для: cheops   (13.05.2011 в 15:23)
 

>Как вариант, этим же скриптом и отдавайте файл.

Полность подходит.

Подскажите правило?

  Ответить  
 
 автор: cheops   (13.05.2011 в 16:05)   письмо автору
 
   для: Alph[p]a   (13.05.2011 в 15:27)
 

Правил собственно нет, это сам скрипт должен делать, примерно так, как это описывается в теме по ссылке http://softtime.ru/forum/read.php?id_forum=1&id_theme=80323.

  Ответить  
 
 автор: Alph[p]a   (13.05.2011 в 16:07)   письмо автору
 
   для: cheops   (13.05.2011 в 16:05)
 

неужели нельзя написать правило для pdf файлов ? если в строке запроса есть PDF то кидаем на скрипт???

  Ответить  
 
 автор: cheops   (13.05.2011 в 17:33)   письмо автору
 
   для: Alph[p]a   (13.05.2011 в 16:07)
 

Это можно, но тогда перейти потом на pdf будет невозможно, так как вас будет постоянно кидать на этот скрипт. Дело в том, что ReWrite правила применяются всегда, даже если они один раз сработали и вы потом переправляете пользователя на другой URL - они снова к этому URL применяются.

  Ответить  
 
 автор: Alph[p]a   (13.05.2011 в 21:17)   письмо автору
 
   для: cheops   (13.05.2011 в 17:33)
 

тогда вот как..
у меня есть собс. файл

http://localhost/file/2011/05/1.pdf


мне нужно произвести некие действия перед тем как его отдать.
отдается файл через прямую ссылку. как мне это сделать?
нужно перехватить отдачу, выполнить действие а затем отдать.

есть только мысль накинуть js обработчик на клик и ajax ом передать данные куда надо а затем вывести pdf. Какие варианты еще тут могут быть?

  Ответить  
 
 автор: cheops   (13.05.2011 в 21:37)   письмо автору
 
   для: Alph[p]a   (13.05.2011 в 21:17)
 

Перехватите обращение, направьте на скрипт, пусть он сделает работу и отдаст этот файл.

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

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