Python
Last updated
Last updated
The easiest way to get started with Python on a server is with CGI. The only real difference between CGI and running the script on your home computer is that CGI needs to output a Content-Type
header.
Server | Python Version | Python Path | Python Modules Installed |
---|---|---|---|
Server | Python Version | Python Path | Python Modules Installed |
---|---|---|---|
Open the File Manager in Plesk
Open the httpdocs
webroot directory. (If you were transferred from the old cPanel, the directory will be called public_html
.)
Open the cgi-bin
directory
In the top left click the +
button and select Create File
Type test.py
as your filename
Click OK
to create the file
Highlight the test.py
file and select Change Permissions
Add a checkmark to the Execute / Search
column for all three rows (Owner / Group / Others)
Click the Save
button
Make sure rwx r-x r-x
(755
) is displayed under the Permissions column
Highlight test.py
and select Edit in Text Editor
Leave UTF-8
as the encoding, set Line break type
to Convert to Unix style
and copy/paste the below into the large text field:
Click the Save
button
Highlight the test.py
file and select Open in Browser
(Or manually navigate to: <your subdomain>.helioho.st/cgi-bin/test.py
)
If everything worked, you should see Heliohost rules!
displayed in your browser.
In the code pasted in, the first line is called the shebang
. It tells the server which version of Python to use.
The second line of code is the Content-Type
header. This is important so the server knows what to do with the output that follows. If you forget it, your script will give you an error. The Content-Type
header always has to have the two end lines immediately after it. That's what the two `\n`
are.
If you don't see the module you need, your script will probably give you an error when you try to import the missing module. You can view your account error logs for details on which module is missing and causing the error.
Before requesting additional modules, make sure you check the list of modules already installed on your server.
Please do not request modules that are already installed.
After you have checked the list of modules already installed on your server, if there is another module you'd like to request, please create a post in the Customer Service forum. Make sure you provide your account username, your server, the version of Python you're using, and the module(s) you need including any relevant version numbers for them.
Executing a CGI script outside the cgi-bin
folder is possible with some modifications.
Go to /home/<your username>/httpdocs
. (If you were transferred from the old cPanel, the folder will be called public_html
)
Create a file named .htaccess
and copy/paste the below in:
The first two lines make .py
files executable outside cgi-bin
, and the last line makes the filename index.py
show up if someone goes to your domain without having to type out the filename like domain.helioho.st/index.py
. This also supports other CGI file extensions.
If this tutorial has not worked for you, please go back and check all of your steps again to make sure you didn't miss anything. If you can't figure out what is wrong, please post in the Customer Service forum, making sure to provide your username and any error message(s) received.
Johnny
3.9
#!/usr/bin/python3.9
Johnny
3.12
#!/usr/bin/python3.12
Tommy
3.9
#!/usr/bin/python3.9
Tommy
3.12
#!/usr/bin/python3.12