Самое простое решение для этого можно найти здесь . В основном, выполните ваш скрипт так:
exec('test_script.php >/tmp/output.txt &');
Обратите внимание на амперсанд ('&') в конце, это заставит команду работать в фоновом режиме! Вы можете отложить сценарий на 20 секунд, добавив режим сна в test_script.php.
Другие ваши варианты - запускать второй скрипт либо через Javascript (AJAX) со стороны клиента; или иметь процесс, работающий в фоновом режиме (или регулярно через задание cron), который проверяет какие-то общие данные (например, базу данных) на предмет запросов и активируется, если такой запрос необходимо обработать.
JavaScript не подходит, если сценарий должен запускать , поскольку пользователь может решить отказаться от вашей страницы или не выполнять JavaScript, либо быть злонамеренным и принять решение не выполнять этот конкретный JavaScript.