Install Django on CyberPanel and Openlitespeed with WSGI



Install Django on CyberPanel and Openlitespeed with WSGI

  • Step 1 : Install LiteSpeed Implementation of WSGI
  • Step 2 : Create site:
  • Step 3: Create Virtual Environment
  • Step 4: Install Django
  • Step 5: Create Django Project
  • Step 6: Modify Django settings
  • Step 7: Create context in OpenLiteSpeed
  • Step 8: Verify Django Installation

The setup is with virtual environment.

Step 1 : Install LiteSpeed Implementation of WSGI

Install Python 3 libraries required for compilation

yum update
yum upgrade openlitespeed
yum install python3-devel 
yum install python3-pip
cd ~
curl -O http://www.litespeedtech.com/packages/lsapi/wsgi-lsapi-1.7.tgz

Output:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 48997  100 48997    0     0   130k      0 --:--:-- --:--:-- --:--:--  130k
[root@mail ~]# curl -O http://www.litespeedtech.com/packages/lsapi/wsgi-lsapi-1.7.tgz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 48997  100 48997    0     0   135k      0 --:--:-- --:--:-- --:--:--  135k

Extract tar

tar xf wsgi-lsapi-1.7.tgz
cd wsgi-lsapi-1.7

Configure with Python 3

python3 ./configure.py

Compile

make

Output:

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o main.o main.c
In file included from /usr/include/inttypes.h:25:0,
                 from ./lsapidef.h:37,
                 from ./lsapilib.h:41,
                 from main.c:34:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o wsgi.o wsgi.c
In file included from /usr/include/limits.h:26:0,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:168,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:34,
                 from /usr/include/python3.6m/Python.h:11,
                 from wsgi.c:29:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o wsgiinput.o wsgiinput.c
In file included from /usr/include/limits.h:26:0,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:168,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:34,
                 from /usr/include/python3.6m/Python.h:11,
                 from wsgiinput.c:29:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o wsgiwrapper.o wsgiwrapper.c
In file included from /usr/include/limits.h:26:0,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:168,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:34,
                 from /usr/include/python3.6m/Python.h:11,
                 from wsgiwrapper.c:29:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o lsapilib.o lsapilib.c
In file included from /usr/include/ctype.h:26:0,
                 from lsapilib.c:35:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE              =2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64               -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O0 -g3 -I. -I/usr/include/python3.6m  -I. -I/usr/inc              lude/python3.6m  -c -o lsapi-glue.o lsapi-glue.c
In file included from /usr/include/limits.h:26:0,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:168,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/limits.h:34,
                 from /usr/include/python3.6m/Python.h:11,
                 from lsapi-glue.c:33:
/usr/include/features.h:330:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimiz              ation (-O) [-Wcpp]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
    ^
gcc -pthread -Wl,-z,relro  -g -L/usr/lib64 -Xlinker -export-dynamic -o lswsgi main.o wsgi.o wsgi              input.o wsgiwrapper.o lsapilib.o lsapi-glue.o -L/usr/lib64/python3.6/config-3.6m-x86_64-linux-gn              u -lpython3.6m -lpthread -ldl  -lutil -lm

Copy lswsgi to fcgi-bin

cp lswsgi /usr/local/lsws/fcgi-bin/

if existing overwrite

cp: overwrite ‘/usr/local/lsws/fcgi-bin/lswsgi’? y

Step 2 : Create site:

Login to your CyberPanel Control Panel.




Create website, you can get a new hosting account with Openlitespeed here https://www.hostingbyalitech.com

Fill out :

Site package : default (or any other if you have)

Site owner : yourusername

Domain name : souqagora.tk (here I am using this site this will be referred throughout the tutorial.

E-mail: your e-mail

Select php : 7.3 (this will not affect but normally I choose 7.3 or as required)

and check all additional features i.e. SSL, DKIM Support, open_basedir protection, Create Mail Domain

Step 3: Create Virtual Environment

Move to your site root dir:

cd /home/souqagora.tk/public_html

Create virtual environment:

python3 -m virtualenv /home/souqagora.tk/public_html

Output :

Using base prefix '/usr'
  No LICENSE.txt / LICENSE found in source
New python executable in /home/souqagora.tk/public_html/bin/python3
Also creating executable in /home/souqagora.tk/public_html/bin/python
Installing setuptools, pip, wheel...
done.

Activate virtual environment:

source /home/souqagora.tk/public_html

check python directory

which python

It should reflect the directory of your virtual environment:

/home/souqagora.tk/public_html/bin/python

Step 4: Install Django

pip install django

Output:

Collecting django
  Using cached Django-3.1.6-py3-none-any.whl (7.8 MB)
Collecting sqlparse>=0.2.2
  Using cached sqlparse-0.4.1-py3-none-any.whl (42 kB)
Collecting pytz
  Using cached pytz-2021.1-py2.py3-none-any.whl (510 kB)
Collecting asgiref=3.2.10
  Using cached asgiref-3.3.1-py3-none-any.whl (19 kB)
Installing collected packages: sqlparse, pytz, asgiref, django
Successfully installed asgiref-3.3.1 django-3.1.6 pytz-2021.1 sqlparse-0.4.1

Step 5: Create Django Project

python3 -m django startproject souq

Note: My project name is souq replace as required.

Step 6: Modify Django settings

cd souq
cd souq
nano settings.py

Change below 

ALLOWED_HOSTS = []

So that it should reflect as:

ALLOWED_HOSTS = ['*']

and add below at the end of the file settings.py

STATIC_ROOT = '/home/souqagora.tk/public_html/souq/public/static'

mentioning /public/static is required

cd..

make sure you are in the below folder:

/home/souqagora.tk/public_html/souq/

Use this command to make sure:

pwd

create directory

mkdir -p public/static

Collect static files:

python manage.py collectstatic

Make database migration

python manage.py migrate

Output:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying auth.0012_alter_user_first_name_max_length... OK
  Applying sessions.0001_initial... OK

Create super user:

python manage.py createsuperuser

Output:

Username (leave blank to use 'root'): root
Email address:
Password:
Password (again):
Superuser created successfully.

Note: Here I am creating with root user because I was having difficulties creating other users at the moment. After you create first user with root you may create other users while in Django admin.

Change folder owner:

chown -R nobody:nobody /home/souqagora.tk/public_html/souq/

Step 7: Create context in OpenLiteSpeed

Login to your OpenLiteSpeed Control Panel, 7080 is the Openlitespeed Port for Control Panel:

https://hostingbyalitech.com:7080

Go to Virtual Hosts on side bar.

and open the virtual host configuration form above icon.

Click Context Tab.

Click ‘+’ sign and add new context, select App Server as shown below:

and click next.

Now fillout these details as shown:

URI * = /

Location * = /home/souqagora.tk/public_html/souq/

Binary Path = /usr/local/lsws/fcgi-bin/lswsgi

Application Type = WSGI

Startup File = souq/wsgi.py

Environment = PYTHONPATH=/home/souqagora.tk/public_html/lib/python3.6:/home/souqagora.tk/public_html/souq
LS_PYTHONBIN=/home/souqagora.tk/public_html/bin/python

Note: Make sure you have python version 3.6 otherwise check accordingly and modify above version in PYTHONPATH.

Step 8: Verify Django Installation

http://souqagora.tk/admin/

These links were of help but I had to struggle alot to reach to success which changes have been included in these guides:

https://openlitespeed.org/kb/python-wsgi-applications/

https://blog.cyberpanel.net/2019/01/10/how-to-setup-django-application-on-cyberpanel-openlitespeed/

Keywords:

Install, Django, on, CyberPanel, Openlitespeed, with WSGI, WSGI, Install Django, CyberPanel Django, OpenLitespeed with WSGI

Posted in Technical Solutions on Feb 02, 2021



Choosing an SEO-Friendly Domain Name

Posted in Uncategorized on Jul 30, 2024

Choosing an SEO-friendly domain name is crucial for your website's success. This comprehensive guide explores the importance of domain names in SEO, provides actionable tips for selecting the best domain, and shares strategies to enhance your domain's SEO performance. Discover how to pick the right keywords, the benefits of short and simple domain names, and the role of trustworthy domain extensions. Learn how to create valuable content, build backlinks, and brand your domain effectively. Get insights into competitor domain analysis and whether you need to change your domain name for better SEO results.



[SOLVED / FIXED] Kubesphere request to http //ks-apiserver/oauth/token failed

Posted in Technical Solutions on Jul 17, 2022

[SOLVED / FIXED] Kubesphere request to http //ks-apiserver/oauth/token failed



Intel CEO Pat Gelsinger's Dramatic Exit: A Tech Industry Watershed Moment

Posted in News on Dec 03, 2024

Intel CEO Pat Gelsinger abruptly resigned on December 1, 2024, after a challenging three-year tenure. His departure follows the company's dramatic decline, with Intel's stock falling 61% and losing ground to AI-focused competitors like Nvidia. The company has appointed interim co-CEOs while searching for a permanent replacement, marking a critical moment in Intel's struggle to remain competitive in the rapidly evolving semiconductor industry.



ACME now uses ZeroSSL, here is what you need to do for your CyberPanel

Posted in Technical Solutions on Jun 07, 2024

Learn how to set up ZeroSSL for your CyberPanel as ACME now requires email registration. Follow this step-by-step guide to ensure smooth SSL configuration.



Best Affordable Web Hosting Provider 2022 - Pakistan

Posted in News on Oct 14, 2022

We are pleased to announce that Hosting by AliTech has won the CorporateVision's Global Business Award "Best Affordable Web Hosting Provider 2022 - Pakistan".



How to Protect Your Website from Malware and Viruses

Posted in News on Oct 07, 2024

In today's digital world, protecting your website from malware and viruses is crucial to maintaining its performance, security, and user trust. This guide covers essential strategies such as using strong passwords, enabling two-factor authentication, installing web application firewalls (WAF), and securing your site with SSL certificates. Regular updates, backups, and security audits are also key to preventing cyberattacks. Whether you're running a small blog or a large e-commerce site, these best practices will help you safeguard your website and keep it secure from malicious threats.



WordPress Cofounder Asks Court to Dismiss WP Engine’s Lawsuit

Posted in News on Nov 01, 2024

WordPress cofounder Matt Mullenweg, along with Automattic, has moved to dismiss a lawsuit filed by WP Engine that alleges defamation, extortion, and trademark infringement. WP Engine’s claims arise from Mullenweg’s criticism of the company’s contributions to WordPress and his decision to restrict its access to WordPress.org resources. Mullenweg counters that WP Engine has no legal right to these resources, describing the company’s reliance on WordPress.org as a “risky decision” made without a backup plan. This high-stakes case has stirred concerns within the WordPress community about the implications for other developers and businesses relying on the platform’s open-source ecosystem.



Unbeatable Prices and Performance: HostingbyAliTech's Cloud Hosting

Posted in Hosting Promotions on Jun 07, 2024

HostingbyAliTech offers low-cost cloud web hosting with optimized performance using CyberPanel and LiteSpeed, making it the top choice for quality and speed-conscious clients since 2020.



Ultimate Guide to Web Hosting and Domain Services: Everything You Need to Know

Posted in Uncategorized on Jun 28, 2024

Discover the ultimate guide to web hosting and domain services. Learn about domain name registration, secure WordPress hosting, dedicated Windows server hosting, and more. Find the best web hosting providers and services for your business needs



Free Backlinks by Guest posts on HostingbyAliTech

Posted in Hosting Promotions, News on Jan 26, 2021

Free Backlinks by Guest posts on HostingbyAliTech We are announcing an exciting news!!! Now you can get free backlinks just by creating account on HostingbyAliTech and creating guest post.



Top Cloud Service Providers in the World

Posted in Uncategorized on Sep 20, 2024

In today's digital age, cloud service providers are essential for businesses looking to enhance their IT infrastructure, improve scalability, and secure data. Leading platforms like Amazon Web Services (AWS), Microsoft Azure, and Google Cloud dominate the market, each offering unique services and benefits tailored to various business needs. From AWS's extensive range of tools to Azure's seamless Microsoft integration and Google Cloud's powerful data analytics capabilities, organizations have ample options to choose from. This article explores the top cloud service providers, what they offer, and how to select the right one for your business.



WhatsApp's Upcoming Features: A Comprehensive Look at the Future of Messaging

Posted in News on Aug 30, 2024

WhatsApp is rolling out exciting new features, including advanced contact syncing options, multi-account support, and enhanced privacy tools like passkey encryption. These updates will allow users to manage contacts separately for each account, manually sync specific contacts, and create custom chat lists. Additionally, WhatsApp is working on voice message transcription and in-app translation, making communication more seamless and secure. These features, currently in beta, aim to improve user experience and provide greater control over personal and professional interactions



Hosting by AliTech listed in topmillion.net

Posted in About Hosting by AliTech, News on Feb 08, 2021

Top million domains by Alexa Hosting by AliTech listed in http://www.topmillion.net/domain-list-377



[SOLVED] MySQL / MariaDB Specified key was too long; max key length is 767 bytes

Posted in Technical Solutions on Jan 07, 2022

[SOLVED] MySQL / MariaDB Specified key was too long; max key length is 767 bytes Error : mariadb specified key was too long. Specified key was too long; max key length is 767 bytes.



Metro-Goldwyn-Mayer (MGM) Inks Cloud Computing Deal With Amazon in Search for "New Revenue Opportunities"

Posted in News on Feb 09, 2021

MGM (a private company) is set to move all of its content to Amazon’s cloud and use the tech giant’s software to modernize its media supply chain. Metro Goldwyn Mayer has signed a cloud computing agreement with Amazon Web Services to move its content and distribution efforts to the tech giant’s cloud. The James Bond studio is set to move all of its content to Amazon's cloud and use the tech giant's software to modernize its media supply chain.



Introduction to Multi-Cloud Hosting

Posted in Uncategorized on Jul 29, 2024

Multi-cloud hosting is revolutionizing the way businesses manage their IT infrastructure by leveraging multiple cloud service providers. This strategy offers enhanced reliability, cost efficiency, flexibility, and scalability, making it a popular choice for modern enterprises. While it brings challenges like complexity in management and security concerns, the benefits often outweigh the drawbacks. As technology advances, trends such as AI integration, improved security measures, and the growth of edge computing are set to shape the future of multi-cloud hosting, making it an indispensable approach for businesses aiming for resilience and efficiency in their operations.



[SOLVED / FIXED] Django Rest Framework - Missing Static Directory

Posted in Technical Solutions on Jun 27, 2022

Used these static and media settings in settings.py STATIC_ROOT = os.path.join(BASE_DIR, 'public/static') STATIC_URL = '/static/' MEDIA_ROOT = os.path.join(BASE_DIR, 'public/media') MEDIA_URL = '/media/' and python manage.py collectstatic



Learn how to schedule homework activities before bedtime? [Guest Post]

Posted in Guest Posts on Oct 02, 2021

Making a proper schedule is essential in order to overcome the homework help burden. Whether it is a big test around the corner or the upcoming deadline of the assignment completion. Sometimes it becomes impossible to avoid stressful bourbon. But with a proper schedule and planner, you are absolutely going to overcome your stress.




Other Blogs


Choosing an SEO-Friendly Domain Name

Posted in Uncategorized on Jul 30, 2024 and updated on Jul 30, 2024

Intel CEO Pat Gelsinger's Dramatic Exit: A Tech Industry Watershed Moment

Posted in News on Dec 03, 2024 and updated on Dec 03, 2024

Best Affordable Web Hosting Provider 2022 - Pakistan

Posted in News on Oct 14, 2022 and updated on Nov 27, 2023

How to Protect Your Website from Malware and Viruses

Posted in News on Oct 07, 2024 and updated on Oct 07, 2024

WordPress Cofounder Asks Court to Dismiss WP Engine’s Lawsuit

Posted in News on Nov 01, 2024 and updated on Nov 01, 2024

Unbeatable Prices and Performance: HostingbyAliTech's Cloud Hosting

Posted in Hosting Promotions on Jun 07, 2024 and updated on Jun 07, 2024

Free Backlinks by Guest posts on HostingbyAliTech

Posted in Hosting Promotions, News on Jan 26, 2021 and updated on Mar 30, 2022

Top Cloud Service Providers in the World

Posted in Uncategorized on Sep 20, 2024 and updated on Sep 20, 2024

WhatsApp's Upcoming Features: A Comprehensive Look at the Future of Messaging

Posted in News on Aug 30, 2024 and updated on Aug 30, 2024

Hosting by AliTech listed in topmillion.net

Posted in About Hosting by AliTech, News on Feb 08, 2021 and updated on May 14, 2021

Introduction to Multi-Cloud Hosting

Posted in Uncategorized on Jul 29, 2024 and updated on Jul 29, 2024

[SOLVED / FIXED] Django Rest Framework - Missing Static Directory

Posted in Technical Solutions on Jun 27, 2022 and updated on Jul 05, 2022

Learn how to schedule homework activities before bedtime? [Guest Post]

Posted in Guest Posts on Oct 02, 2021 and updated on Oct 03, 2021







Comments

Please sign in to comment!






Subscribe To Our Newsletter

Stay in touch with us to get latest news and discount coupons