问题
I'm trying to setup a cron task in Plesk to run a short script every 5 minutes, I've just moved from a managed hosting account to a full access Plesk VPS, and I'm a little lost on a couple of things, this one in particular, when I go to Server > Scheduled Tasks
I get a list of 'system users' as below, but I'm not sure under which user to make the cron task, any ideas?
- adm
- apache
- bin
- daemon
- ftp
- games
- gopher
- .. going all the way down to webalizer
The cron script path is below if that's relevant as to which user to choose -
/var/www/vhosts/mysite.com/httpdocs/scripts/index.php
回答1:
If you are going to create subscription-level task, than you can create cron/windows scheduler task in:
"Subscriptions" > your subscription > "Websites & domains" > click on "Show advanced operations" > "Scheduled Tasks" > there will be only one name of FTP user of your subscription.
Note: Pay attention to interface changes for Plesk 11.5 and Plesk 12+ - there is no need to open "Show advanced operations".
The latest Plesk 12.5 provide a lot of options to cover most of the task cases:
Plesk 12.5
Other Plesk versions support only "Run a command" option:
Plesk 12.0
Plesk 11.5
If you need just answer, in "Server" -> "Scheduled Tasks" you can choose:
FTP user of your subscription
mysite.com
your can choose
root
, but it's not recommended for security reasons.
For Plesk version below 12.5 to schedule execution of PHP script on Windows there is two ways:
Direct call of
php
binary with your script as argument.Path to executable file:
C:\Program Files (x86)\Parallels\Parallels Panel\Additional\PleskPHP55\php.exe
Arguments: path to you script like
C:\inetpub\vhosts\domain.tld\httpdocs\script.php
Note: Pay attention to interpretation path,
...Additional\PleskPHP55\php.exe
it path for PHP 5.5, you can change PleskPHP55 to PleskPHP5, PleskPHP53 or PleskPHP54 to use another PHP version.Call script via request to your site:
Path to executable file:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Arguments:
-c "(new-object system.net.webclient).downloadstring('http://domain.test/script.aspx')"
回答2:
Creating a Scheduled Task in Plesk 11:
You can set up Scheduled Tasks in Plesk by doing the following:
- Log into Plesk*
- Click on the Websites & Domains tab.
- Click on Show Advanced Operations (a small grey link in the middle of the page), if the advanced options are not already shown.
- Click on Scheduled Tasks.
- Select the appropriate system user.
- Click on Schedule New Task.
Fill out the form as follows:
Switched On: Check the box to turn on the scheduled task.
Description: A short description to remind you what this scheduled task does.
Scheduler Notification: If you want an email every time this runs, select the appropriate option, otherwise select Do Not Send.
You may provide an email address where you want the notifications sent to.
Path to executable file: Specify the path to the file you wish to execute.
For Windows servers, it would be something like this:
C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP5\php-cgi.exe
Arguments:
D:\Inetpub\vhosts\mydomain.tld\httpdocs\myscript.php
For Linux servers with Plesk, it would be something like this:
/var/www/vhosts/domain.tld/httpdocs/myscript.php<
/sup>Replace domain.tld with your domain name, and
myscript.php
with the appropriate subfolder(s) (if any) and filename.Task Priority: Select Low, Normal or High.
Specify when to run your command by selecting the appropriate checkboxes in the Hours, Days of month, Months or Days of week fields.
Click OK to schedule the task or click Run Now to schedule the task and immediately run it.
You will be taken back to the Scheduled Tasks screen and you should see your new scheduled task listed at the bottom.
Removing a Scheduled Task in Plesk 11
- Logging into Plesk*
- Click on the Websites & Domains tab.
- Click on Show Advanced Operations (a small grey link in the middle of the page), if the advanced options are not already shown.
- Click on Scheduled Tasks.
- Select the appropriate system user.
- Check the box next to the Scheduled Task you want to remove.
- Click on the Remove button.
- It will load a new page and ask if you really want to deleted it. Check the Confirm Removal box and click on the OK button.
You will be taken back to the Scheduled Tasks screen and it should say:
"Information: Scheduled tasks were removed."
Source: Knowledgebase - Creating or Removing Scheduled Tasks in Plesk at motherhost.in
回答3:
Use this command:
php -q httpdocs/scripts/index.php
来源:https://stackoverflow.com/questions/16700749/setting-up-cron-task-in-plesk-11