Forum Webscript.Ru

Программирование => PHP => Тема начата: Michel_Mak от 23 Июля 2002, 11:50:23

Название: 404 и referer
Отправлено: Michel_Mak от 23 Июля 2002, 11:50:23
Добрый день!
Сталкнулся с проблемой, что не могу определить откуда пользователь пришел на ошибочную страницу (404) refer`ы дают пустую строчку, это касается как php так и javascript.
Вопрос в следующем, как правильно настроить .htaccess или может есть другие пути?
Название: 404 и referer
Отправлено: ThE0ReTiC от 23 Июля 2002, 11:56:41
А чего в логах пишется?
Название: 404 и referer
Отправлено: Alexandr от 23 Июля 2002, 12:15:14
Я тож над этим бился. А всё из-за того что Apache у мя как CGI поставлен.
Название: 404 и referer
Отправлено: Alexandr от 23 Июля 2002, 12:16:04
.....Нашёл решение в mod_rewite.
Название: 404 и referer
Отправлено: Michel_Mak от 23 Июля 2002, 12:20:17
Добрый день!
Цитировать
А чего в логах пишется?

К сожалению, к log файлам доступа нет.
Название: 404 и referer
Отправлено: Michel_Mak от 23 Июля 2002, 12:21:28
Добрый день!
Цитировать
Нашёл решение в mod_rewite

Каким образом?
Название: 404 и referer
Отправлено: Alexandr от 23 Июля 2002, 12:34:14
У мя была несколько др. задача.
Перенёс файлы из корня в папку, а что бы ссылки не побились. Хотел сделать переадресацию на файл redirect.php, который в свою очередь переадресовывал бы на нужную страницу. НЕ ВЫШЛО!
и сделал ч/з mod_rewrite
Напр.
RewriteRule ^myfile.php.*$ /soft%{REQUEST_URI}?%{QUERY_STRING} [R]
Название: 404 и referer
Отправлено: Michel_Mak от 24 Июля 2002, 12:59:14
Добрый день!
Цитировать
сделал ч/з mod_rewrite

Мой сайт у провайдера и я не могу  менять mod_rewrite :(
Название: 404 и referer
Отправлено: Alexandr от 24 Июля 2002, 13:02:36
Цитировать
Мой сайт у провайдера и я не могу менять mod_rewrite

В смысле "менять"?
Тебе необходимо, чтобы был доступ к .htaccess и чтобы Apache с модулем mod_rewrite.
Название: 404 и referer
Отправлено: Michel_Mak от 24 Июля 2002, 13:08:55
Добрый день!
Цитировать
и чтобы Apache с модулем mod_rewrite.

Звонил суппортам, уверяют, что нет такого модуля.
Название: 404 и referer
Отправлено: ThE0ReTiC от 24 Июля 2002, 13:12:39
Michel_Mak
Гы... :)
Они тебе точно чего сказали - что такого модуля вообще нет, или что он просто не скомпилен?
phpinfo Чего пишет в списке Loaded Modules?
Название: 404 и referer
Отправлено: Alexandr от 24 Июля 2002, 13:33:11
ThE0ReTiC
Цитировать
Чего пишет в списке Loaded Modules

Ничего не будет писать если PHP как CGI.
Michel_Mak
Вот статейки почитай про mod_rewrite. Там сказано как проверить.
http://sitemaker.ru/technologies/webserver/mod_rewrite/
Название: 404 и referer
Отправлено: ThE0ReTiC от 24 Июля 2002, 13:37:05
Цитировать
если PHP как CGI.

То надо менять хостинг.
Только ленивые клоуны так делают. Или люди которые по другому не умеют.
Название: 404 и referer
Отправлено: Alexandr от 24 Июля 2002, 13:45:25
Цитировать
То надо менять хостинг.
Только ленивые клоуны так делают. Или люди которые по другому не умеют.
Ничего подобного!!! Я на таком хостюсь. PHP как CGI делается это в целях безопасности.
И хостинг у мя нормальный.
Название: 404 и referer
Отправлено: ThE0ReTiC от 24 Июля 2002, 13:47:57
Alexandr
Ага. Если они по другому никак безопасность обеспечить не могут. Что ж. Флаг в руки...
Все потому, что ленивые они.
Название: 404 и referer
Отправлено: Alexandr от 24 Июля 2002, 13:56:07
Да не ленивые у мя хостеры.
[OFF]Ща письмо им намылю[/OFF]
Название: 404 и referer
Отправлено: Michel_Mak от 25 Июля 2002, 17:32:11
Добрый день!
В hpaccess прописываю: ErrorDocument 404 /404.php
в файле 404 -

Извините, файл "" не найден!


Возвращает /404.php, а getenv("HTTP_REFERER") возвращает пустоту.
с помощью phpinfo() - определил, что mod установлен (о чем они умолчивали упорно).
Александр, спасибо, статьи прочитал, но пока слабо представляю как их применить на определение.
Вопрос остается открытым!!!
Название: 404 и referer
Отправлено: Alexandr от 26 Июля 2002, 08:59:25
....даж незнаю что подсказать.
Я обычно смотрю файл error.log
Есть изврасткий способ:
(Если статьи читал, то поймёшь)
Пишешь условия (RewriteCond)
если != всем твоим нормальным файлам, то
делаешь правило RewriteRule
^{REQUEST_URI}.*$ error.php?%{REQUEST_URI};!;%{QUERY_STRING}
Название: 404 и referer
Отправлено: Michel_Mak от 26 Июля 2002, 09:23:24
Добрый день!
Цитировать
Есть изврасткий способ:

Да, я уже сам думал над таким решением, только проверять его посредством скрипта, то есть все запрашиваемые файлы проверять на наличие и в случаи отсутствия выдавать ошибку. В данном случае, я думаю, мы минуем ErrorDocument 404, но, наверное, время увеличится!?
Цитировать
обычно смотрю файл error.log

Постараюсь с ссупортами и хостерами договорится. Но вот, что странно, они не дают прямого пути к просмотру логов, а предлагают воспользоваться какой-то программой ssh.... прям даже не знаю....
Название: 404 и referer
Отправлено: Alexandr от 26 Июля 2002, 10:31:39
Michel_Mak лучше пробей за логи. Оч полезная вещь.
Название: 404 и referer
Отправлено: Michel_Mak от 26 Июля 2002, 10:36:08
Добрый день!
Цитировать
лучше пробей за логи. Оч полезная вещь.

Так я понимаю, просто хотелось и почтой получать, ошибочную страницу, куда пользователь хотел попасть.
Не подскажешь, как реализовать, если через логи?
Название: 404 и referer
Отправлено: Alexandr от 26 Июля 2002, 11:07:57
Цитировать
просто хотелось и почтой получать, ошибочную страницу

Ни в коем случае.
Если крякеры начнуть искать дыры, то можешь получить до 100 писем в минуту.
Напр.
Цитировать

[Fri Jul 26 00:34:20 2002] [error] [client 195.131.84.203] Invalid error redirection directive: acat_onl.php
[Fri Jul 26 01:15:19 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/root.exe
[Fri Jul 26 01:15:20 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/MSADC/root.exe
[Fri Jul 26 01:15:23 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..%5C../winnt/system32/cmd.exe
[Fri Jul 26 01:15:23 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/_vti_bin/..%5C../..%5C../..%5C../winnt/system32/cmd.exe
[Fri Jul 26 01:15:23 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/_mem_bin/..%5C../..%5C../..%5C../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/msadc/..%5C../..%5C../..%5C/..Б../..Б../..Б../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..Б../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..АЇ../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..Бњ../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..%5C../winnt/system32/cmd.exe
[Fri Jul 26 01:15:24 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/..%2F../winnt/system32/cmd.exe
[Fri Jul 26 02:22:13 2002] [error] [client 213.59.157.22] File does not exist: /web/autodealer/site/www/demo/form_p.zip
[Fri Jul 26 04:29:35 2002] [error] [client 194.226.235.116] File does not exist: /web/autodealer/site/www/scripts/root.exe

Цитировать
Не подскажешь, как реализовать, если через логи

У мя сам Apache генерит их, а смотрю их в WC по F3.
Напр.
Цитировать

[Fri Jul 26 10:56:37 2002] [error] [client 195.98.162.66] File does not exist: /web/autodealer/site/www/demo/freeware/pix/logo.gif
[Fri Jul 26 10:56:50 2002] [error] [client 195.98.162.66] File does not exist: /web/autodealer/site/www/demo/freeware/pix/topic.gif
[Fri Jul 26 10:57:40 2002] [error] [client 195.98.162.66] File does not exist: /web/autodealer/site/www/demo/freeware/pix/partner.gif
[Fri Jul 26 10:57:44 2002] [error] [client 195.98.162.66] File does not exist: /web/autodealer/site/www/demo/freeware/pix/new.gif
.....
[Fri Jul 26 12:43:54 2002] [error] [client 64.152.75.74] File does not exist: /web/autodealer/site/www/addsite/avtodealer.ru/robots.txt
[Fri Jul 26 12:43:54 2002] [error] [client 64.152.75.74] Invalid error redirection directive: index.html
Название: 404 и referer
Отправлено: Michel_Mak от 26 Июля 2002, 11:28:50
Добрый день!
Цитировать
крякеры начнуть искать дыры

Каким образом лучше защититься от их атак?

За совет спасибо, mail(); отключу тогда. Просто буду выдавать надпись, что файл не найден. Обидно, только, что проблему так и не решил :(
Название: 404 и referer
Отправлено: Alexandr от 26 Июля 2002, 12:05:36
Цитировать
Обидно, только, что проблему так и не решил

Ну дак с логами то что?
Есть даже проги (PHP), которые логи в виде отчётов предоставляют.
Название: 404 и referer
Отправлено: Michel_Mak от 29 Июля 2002, 12:13:02
Добрый день!
Цитировать
Ну дак с логами то что?

Добрался до них посредством ssh secure shell. С прогами сложнее так как на логи стоят только ссылки, как вариант - копировать логи в отдельную директорию и их обробатывать прогами, но это маразм!
Название: 404 и referer
Отправлено: Alexandr от 29 Июля 2002, 12:40:12
А чё у тя хостеры так за логи пекутся?
[OFF]И перестань писать "Добрый день!"[/OFF]
Название: 404 и referer
Отправлено: Michel_Mak от 29 Июля 2002, 13:07:23
Добрый день!
Цитировать
И перестань писать "Добрый день!"

забил так. лень переделывать.
Цитировать
А чё у тя хостеры так за логи пекутся?

кто ж их знает...