From 1c2deac7e5db2da90e798e7860368d328f5e52d8 Mon Sep 17 00:00:00 2001 From: Hypolite Petovan Date: Sun, 18 Mar 2018 23:25:21 -0400 Subject: [PATCH] Move scripts/worker.php to bin/ --- INSTALL.txt | 8 ++++---- bin/daemon.php | 2 +- {scripts => bin}/worker.php | 2 +- doc/Install.md | 4 ++-- doc/de/Install.md | 4 ++-- src/Core/Worker.php | 2 +- util/vagrant_provision.sh | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) rename {scripts => bin}/worker.php (97%) mode change 100755 => 100644 diff --git a/INSTALL.txt b/INSTALL.txt index ee3779bc9..2a95822a2 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -113,14 +113,14 @@ tables, so that you can start fresh. 8. Set up a cron job or scheduled task to run the worker once every 5-10 minutes to pick up the recent "public" postings of your friends. Example: - cd /base/directory; /path/to/php scripts/worker.php + cd /base/directory; /path/to/php bin/worker.php Change "/base/directory", and "/path/to/php" as appropriate for your situation. If you are using a Linux server, run "crontab -e" and add a line like the one shown, substituting for your unique paths and settings: -*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php scripts/worker.php +*/10 * * * * cd /home/myname/mywebsite; /usr/bin/php bin/worker.php You can generally find the location of PHP by executing "which php". If you have troubles with this section please contact your hosting provider for @@ -293,14 +293,14 @@ cron by using something like */10 * * * * cd /var/www/friendica/friendica/ && sudo -u www-data /usr/bin/php -d suhosin.executor.func.blacklist=none -d suhosin.executor.eval.blacklist=none --f scripts/worker.php +-f bin/worker.php This worked well for simple test cases, but the friendica-cron still failed with a fatal error: suhosin[22962]: ALERT - function within blacklist called: proc_open() (attacker 'REMOTE_ADDR not set', file '/var/www/friendica/friendica/boot.php', line 1341) -After a while I noticed, that scripts/worker.php calls further php script via +After a while I noticed, that bin/worker.php calls further php script via proc_open. These scripts themselves also use proc_open and fail, because they are NOT called with -d suhosin.executor.func.blacklist=none. diff --git a/bin/daemon.php b/bin/daemon.php index b53a69e1b..6b0e377a3 100644 --- a/bin/daemon.php +++ b/bin/daemon.php @@ -104,7 +104,7 @@ while (true) { set_time_limit(0); // Call the worker - $cmdline = $php.' scripts/worker.php'; + $cmdline = $php.' bin/worker.php'; $executed = false; diff --git a/scripts/worker.php b/bin/worker.php old mode 100755 new mode 100644 similarity index 97% rename from scripts/worker.php rename to bin/worker.php index 1980a21b1..67f9fed1a --- a/scripts/worker.php +++ b/bin/worker.php @@ -1,7 +1,7 @@ #!/usr/bin/env php proc_run($args); } diff --git a/util/vagrant_provision.sh b/util/vagrant_provision.sh index 7ca5a1f4e..eab125b0d 100755 --- a/util/vagrant_provision.sh +++ b/util/vagrant_provision.sh @@ -88,7 +88,7 @@ echo "create database friendica DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_ge $MYSQL -uroot -proot friendica < /vagrant/friendica_test_data.sql # create cronjob - activate if you have enough memory in you dev VM -echo "*/10 * * * * cd /vagrant; /usr/bin/php scripts/worker.php" >> friendicacron +echo "*/10 * * * * cd /vagrant; /usr/bin/php bin/worker.php" >> friendicacron sudo crontab friendicacron sudo rm friendicacron