На страницу 1, 2 След. |
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
в php (пхп) (версий 4+ -- 5+) узнать что скрипт.пхп был вызван именно через браузер (хттп-демоном?
наверно по переменнов
$_SERVER["REQUEST_METHOD"]
если она установлена как GET или POST то, значит что скрипты был вызван из браузера/демоном..
если так, то значит пеерменная $_SERVER["REQUEST_METHOD"] будет пуста, если скрипт был вызван из шела/кроном/телнетом...
так ?
другие способы есть.. ?
ед. что на REQUEST_QUERY - строка после domain/?lala&lala
т.к. именно "/?lala&lala" - и есть REQUEST_QUERY (?)
спасибо! |
|
|
|
|
|
WEBCAM |
![]() brantozawr Опытный |
Зарегистрирован: 10.11.2008
Сообщений: 126
|
Обратиться по нику
|
brantozawr |
Ответить с цитатой | | |
|
При вызове из консоли (шел, крон...) переменные ($_SERVER["HTTP_USER_AGENT"], $_SERVER["REQUEST_METHOD"], $_SERVER["REMOTE_ADDR"]) должны быть пустыми...
А $_SERVER["CLIENTNAME"] = "Console".
А вообще, запусти такой скрипт из браузера и из коноли.... и сам увидишь разницу, по которой можно определять.
Код: |
<?
print_r ($_SERVER);
?>
|
|
|
|
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
В пхп можно , через функцию времени узнать, - Сколько секунд прошло с 00:00 (с начало дня) то момента запуска этой функции..
это число от 1 до 86400
(?) |
|
|
|
|
|
WEBCAM |
![]() brantozawr Опытный |
Зарегистрирован: 10.11.2008
Сообщений: 126
|
Обратиться по нику
|
brantozawr |
Ответить с цитатой | | |
|
ну узнай текущее время, умножь часы*3600 + минуты*60 + секунды и получишь сколько секунд с начала суток.... |
|
|
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
немогу найти, в арифм. функ..
как квадратный корень от числа в ПХП4/ПХП5 взять ?
... это должно быть типа того -- SQR/ SQRT.
также, расчет корней в ПХП, недолжен приводить к сущ. паузам ?
спасибо. |
|
|
|
|
|
WEBCAM |
![]() brantozawr Опытный |
Зарегистрирован: 10.11.2008
Сообщений: 126
|
Обратиться по нику
|
brantozawr |
Ответить с цитатой | | |
|
sqrt — Square root
Цитата: |
также, расчет корней в ПХП, недолжен приводить к сущ. паузам ?
|
заметить не успеешь... ну а смотря сколько будешь корней извлекать... операция извлечения корня сама по себе не быстрая, конечно, операция. |
|
|
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
brantozawr, спасибо пони-динозаврик ..
мне тут еще потребовалося пропонизировать точные версии ПХП..
и вот что я заметил..
/usr/local/bin/php -v
PHP 5.2.5 (cli) (built: Apr 22 2008 18:50:59)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
/usr/bin/php -v
PHP 5.2.5 (cgi) (built: Apr 22 2008 18:55:01)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
Что значит - "cli", - это типа того что этот ПХП оптимизирован для работы как httpd модуль ?
а второй вариант - cgi - понятен.
При каких обстоятельствах стоит юзать первый вариант и второй ?
.. если скрипт вызываеться httpd то юзать первый вариант ? ,
а если с Крона - то второй ?
.. спец синтаксис для cgi php файлов надо делать ? (как в перл с хидер строкой...)
спасибо.
ПС_
кстати - такой би-вариант я встречаю на всех хостах.. |
|
|
|
|
|
WEBCAM |
![]() brantozawr Опытный |
Зарегистрирован: 10.11.2008
Сообщений: 126
|
Обратиться по нику
|
brantozawr |
Ответить с цитатой | | |
|
Цитата: |
Что значит - "cli", - это типа того что этот ПХП оптимизирован для работы как httpd модуль ?
а второй вариант - cgi - понятен.
|
Совсем нет.. PHP-cli - PHP Command Line Interface
Это расширение языка на использование его в системной командной оболочке.
Вобщем, оно направлено на разработку приложений без привязки к вебу... можно даже разрабатывать приложения с GUI интерфейсом. Ну а вообще у CLI и CGI много общего. подробно здесь http://php.su/prepare/?commandline
Цитата: |
При каких обстоятельствах стоит юзать первый вариант и второй ?
.. если скрипт вызываеться httpd то юзать первый вариант ? ,
|
Если использование сводится к вызову скрипта в кроне, то абослютно пофиг  |
|
|
|
|
|
|
![]() brush V.I.P. |
Зарегистрирован: 29.09.2005
Сообщений: 2572
|
Обратиться по нику
|
brush |
Ответить с цитатой | | |
|
brantozawr писал(а): |
и сам увидишь разницу, по которой можно определять.
|
Этот персонаж тем и замечателен, что ему впадлу пробовать - он "игого!" и вперед, спрашивать.
При исполнении из консоли - много чего не будет - www_root-а, например |
|
|
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
brantozawr, окей.. спасибо..
а какой вариант завязывают на "как модуль" апачу .. CGI ? (/usr/bin/php -v | PHP 5.2.5 (cgi) (built: Apr 22 2008 18:55:01) - этот ?)
или как модуль у апача, это отдельно где то модуль в апаче и никаких вызовов /usr/bin/php, /usr/local/bin/php при обработке апачем html/php файлов с php инжектами, нету ?
какая связть есть между пхп_модуль_апач (какая это файл-субстанция в никсах - модуль?) и файлов в /usr/bin/php, /usr/local/bin/php. |
|
|
|
|
|
WEBCAM |
![]() brantozawr Опытный |
Зарегистрирован: 10.11.2008
Сообщений: 126
|
Обратиться по нику
|
brantozawr |
Ответить с цитатой | | |
|
я из портов собираю. там есть пункты
[X] CLI Build CLI version
[X] CGI Build CGI version
[X] APACHE Build Apache module
т.е. модуль для Апача ставится отдельно от вышеуказанных. |
|
|
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
всех всегда потом оценю.
у меня что то неполучаеться узнать код ответа .. через курл
Код: |
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_REFERER, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 7.0; php Local Browser)');
$r = curl_exec($ch);
if (!$r) { return ":ERROR2:".curl_error($ch).":".curl_errno($ch); } // даже если сервер отдает 404 + какой то Хтмл (в хидере строго стоит 404) всеравно ничего несрабатывет
curl_close($ch);
return $r;
}
|
подскажите как .. тама в коде точно узнать что хидерный ответ 404 или 200 он ?
спасибо. |
|
|
|
|
|
WEBCAM |
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
чуть выше, код.. вот как им точно узнать что напр. запрос на запрашиваемый файл .. сервер отдает 404 хидер.
и как что 200 дает.
спасибо.
(пони+пони=лошадка) |
|
|
|
|
|
WEBCAM |
![]() ctapbiu Опытный |
Зарегистрирован: 06.01.2008
Сообщений: 328
|
Обратиться по нику
|
|
|
|
![]() IseeDeadPeople Объединенная Электрическая |
Зарегистрирован: 06.12.2005
Сообщений: 21971
|
Обратиться по нику
|
IseeDeadPeople |
Ответить с цитатой | | |
|
ctapbiu писал(а): |
игогокай в сторону php.net/curl_getinfo
|
спасибо..
но помоему ответ можно было дать еще короче - просто сказав какой строкой, тама в Курле проверить статус... но и на том спасибо. |
|
|
|
|
|
WEBCAM |
|