[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как (и можно ли вообще) сделать внутренний редирек
Владимир55
Добрый вечер!

Пытаюсь сделать такую манипуляцию.

На странице имеется код:
<img src="121.jpg" width="230" height="52">


И требуется, чтобы при этом вызывался файл script.php, содержащий
<?php
$date = date("j F Y, H:i:s");
file_put_contents('30.txt', $date);
?>

Для этого в файле .htaccess вписан код
RewriteEngine on
RewriteRule ^121\.jpg$ /script.php [L]


К сожалению. не работает.

Помимо этого я перепробовал массы вариантов, но успеха не добился.

Можно ли вообще решить эту задачу? А если можно, то как?

brevis
Не работать может по таким причинам:

1. Нет прав на запись файла 30.txt

2. script.php не лежит "в корне" (например, http://domain.tld/script.php). Если эта манипуляция вся лежит "в папке" (например, http://domain.tld/manipulation/{вот здесь}), то нужно убрать слэш перед script.php в .htaccess.

3. Ну и всякое другое типа mod_rewrite не включен, не разрешено переопределять в .htaccess, браузер не ходит за картинкой...

_____________
Чатик в телеге
Владимир55
1. Права на запись есть, файл пишется, если скрипт запустить напрямую.

2. Все файлы в корне.

3. RewriteEngine on. Если этого не достаточно, то готов сделать что-то еще. Только что?
"не разрешено переопределять в .htaccess" - Такое возможно? Как это проверить?
brevis
Если открыть http://domain.tpl/121.jpg какой ответ (что на экране) и что логах apache?

_____________
Чатик в телеге
killer8080
Цитата (Владимир55 @ 22.04.2022 - 20:18)
И требуется, чтобы при этом вызывался файл script.php, содержащий
<?php
$date = date("j F Y, H:i:s");
file_put_contents('30.txt', $date);
?>

если задача просто мониторить обращение к файлу, то можно грепать access log по крону например.
В твоем варианте картинка выводиться не будет, php скрипт должен её отдавать вместе с корректным заголовком Content-Type.



Спустя 3 минуты, 3 секунды killer8080 написал(а):
Цитата (Владимир55 @ 22.04.2022 - 20:18)
Для этого в файле .htaccess вписан код
RewriteEngine on
RewriteRule ^121\.jpg$ /script.php [L]


К сожалению. не работает.

не работает локально или на хостинге? Если на хостинге, то там обычно статику отдаёт nginx на фронте, до апача эти запросы просто не доходят.
miketomlin
Цитата (killer8080 @ 23.04.2022 - 13:25)
Если на хостинге, то там обычно статику отдаёт nginx на фронте, до апача эти запросы просто не доходят.
Да пропускает обычно фронт такие запросы, если файла нет. Думаете, только по расширению будет 404-ую выводить, если файла нет?
miketomlin
А с логами точняк. Нафига какую-то опосредованную проверку делать сейчас, ведь проблема может быть с самой проверкой?

Владимир55, echo сделайте с изменяемым со временем контентом.
miketomlin
Если вы хотите выводить одноименный граф. файл скриптом, он должен лежать в др. месте, например в /secretfolder/121.jpg или вообще вне корневой ветки.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.