Спецификация не ограничивает длину HTTP, Получают запрос, но различные браузеры реализуют свои собственные ограничения. Например, Internet Explorer реализовали ограничение в 2 083 символах.
Если вы имеете в виду, что хотите, чтобы ваш php-сайт выполнял какие-то обычные задачи, есть два возможных пути:
1) Вы используете cron для регулярного извлечения определенной страницы. Вы можете сделать это с помощью текстового браузера, например lynx. Вы загружаете свой сценарий следующим образом:
* * * * * / usr / bin / lynx http://yourhost.com/cron.php -dump> / dev / null
(Он будет вызывать его каждую минуту. Таким образом, вы можете создать собственное расписание внутри своего приложения)
2) Вы вызываете свой скрипт с помощью интерпретатора php командной строки:
* * * * * / usr / bin / php /path/to/cron.php > / dev / null
В общем, решение два лучше. Однако вам понадобится доступ к коробке. Cron в первом решении может быть запущен с другого хоста, если вы не можете установить crons на хост.
Также остерегайтесь распространенных ошибок, связанных с использованием версии php для командной строки. В debian (и, возможно, в других системах) могут быть отдельные файлы php.ini для cgi, cli и mod_php. Если вы настроили свою конфигурацию, убедитесь, что в командной строке php используется правильный. Вы можете проверить это с помощью:
/ usr / bin / php -i | less
В ответ на комментарий dimo я сделал несколько тестов. Я вызвал простой локальный скрипт php (который просто повторяет "test") 1000 раз с lynx, wget и php-cli:
kbsilver:temp kbeyer$ time . wget.sh
real 0m14.223s
user 0m2.906s
sys 0m6.335s
(Command: wget -O /dev/null "localhost/test.php"; 2> /dev/null)
kbsilver:temp kbeyer$ time . lynx.sh
real 0m26.511s
user 0m5.789s
sys 0m9.467s
(Command: lynx -dump "localhost/test.php"; > /dev/null)
kbsilver:temp kbeyer$ time . php_cli.sh
real 0m54.617s
user 0m28.704s
sys 0m18.403s
(Command: /opt/local/bin/php /www/htdocs/test.php > /dev/null)
Сервер - lighttpd
, php (fastcgi)
с apc (в Mac OS X).
Оказывается, действительно, wget - лучший инструмент для работы, касающейся скорости.
Таким образом, результат php-cli
не такой уж неожиданный, как другой методы повторно используют уже запущенный поток php с кешем опкодов.
Полагаю, вы хотите сделать резервную копию своего сайта PHP? Отредактируйте crontab, используя:
crontab -e
Это запустит экземпляр vi, в котором вы можете редактировать crontab, нажмите i для режима вставки. Затем вам нужно ввести информацию о том, когда будет запущена запись cron и команда, которая будет запускаться в это время, например:
30 10 * * * tar -zcvf ./myphpsite.tar.gz /var/www/phpsite
Таким образом, приведенная выше команда будет архивировать ваш phps-сайт в / var / www / phpsite в 22:30 каждый день. Выйдите и выйдите из vi с помощью : wq
См. Это для получения дополнительной информации: