How to run Python scripts

If you wish to run Python scripts in your hosting account, you can create and edit them in two ways: either in cPanel or via SSH.
  1. Log in to your cPanel:
  2. Go to section Files > File Manager:



  3. You can choose whether you want to run the script in the cgi-bin folder or outside of it.

    The cgi-bin folder contains executable CGI scripts. If the file should be placed out of the cgi-bin folder,.htaccess should be created additionally.

  4. In order to run the Python script in the cgi-bin folder follow the steps:
    • Go to the cgi-bin folder.
    • Create a file with the .py extension, for example nctest.py in the /home/cPuser/public_html/cgi-bin directory (where cPuser is your actual cPanel username).



  5. Change file permissions to 0755.

    NOTE: Files are created with default permissions 0644. The .py file will become executable when the permissions are changed to 0755.

  6. Open the file, click Edit and add the code. We will add the following script for testing purposes:

    #!/usr/bin/pythonX

    print "Content-type:text/html\r\n\r\n"
    print "How to run Python scripts in cPanel"

    where X corresponds to the Python script version you have.

    NOTE: The file should start with the path to the Python scripts that is /usr/bin/python on our servers, but you can run the whereis python command via SSH to check the directory.

Now the script should work using http://domain.com/cgi-bin/nctest.py

If you would like to run the Python file not in the cgi-bin folder (in public_html or any other directory), it is necessary to add the following code to the .htaccess file in the same directory where the Python script is placed:

Options +ExecCGI
AddHandler cgi-script .py


  1. Connect to cPanel account via SSH
  2. Go to the cgi-bin directory running cd ./public_html/cgi-bin

    To check that you are in the correct directory, you can run the command: pwd



  3. Create the file with the .py extension, for example, nctest.py in the /home/cPuser/public_html/cgi-bin directory (where cPuser is your cPanel username).

    To create the file in the current directory, type touch nctest.py

    Once done, you can check that the file is present in the directory now running the command ls



  4. Change file permissions to 0755 running the command below:

    chmod 755 /home/cPuser/public_html/cgi-bin/nctest.py
    (
    where cPuser is your actual cPanel username)



  5. Open the file and add the necessary code.

    You can open the file with one of the editors like nano. To open the file with nano, use the following command:

    nano nctest.py

    We will add the following code for testing purposes:

    # !/usr/bin/python

    print "Content-type:text/html\n\n"
    print "How to run Python scripts in cPanel"


    NOTE: The file should start with the path to the Python scripts that is /usr/bin/python on our servers, but you can run the whereis python command via SSH to check the directory.

    To save the changes, click Crtl+O and press Enter for Windows or Command+O for Mac OS.

    Now the script should work using http://domain.com/cgi-bin/nctest.py

    If you would like to run the Python script not in the cgi-bin folder, it is necessary to add a special code to the .htaccess file in the same directory where the Python file is placed.

  6. Create .htaccess if it is not present in the required directory running touch .htaccess



    7. Open the .htaccess file running nano .htaccess and add the following code:

    Options +ExecCGI
    AddHandler cgi-script .py


    Click Crtl+O and press Enter for Windows or Command+O for Mac OS to save the changes:



    Now you can check the script at http://domain.com/nctest.py


    That's it!


                        Need any help? Contact us via Helpdesk

Associated articles

How to work with Python App
Updated
Viewed
75332 times

Need help? We're always here for you.

notmyip