cài đặt django 1

Hướng dẫn cài đặt Django lên hosting sử dụng cPanel

01/10/2024 Blog, Tin tức

Khi xây dựng các ứng dụng web bằng Django, việc triển khai chúng lên môi trường hosting là một bước quan trọng để đưa sản phẩm đến với người dùng.

Nếu bạn đang sử dụng cPanel – một trong những công cụ quản trị hosting phổ biến nhất hiện nay – thì việc cài đặt Django sẽ trở nên dễ dàng và thuận tiện hơn bao giờ hết.

Trong bài viết này, hãy cùng Z.com tìm hiểu từng bước để cài đặt Django lên hosting sử dụng cPanel, giúp bạn nhanh chóng đưa ứng dụng Django của mình lên mạng một cách hiệu quả.

Hosting tốc độ cao - Chất lượng tốt [ Tặng miễn phí trọn bộ plugin SEO trị giá 359$ ]

+ Giá không thể tốt hơn: Chỉ từ 3K/ngày kèm nhiều ưu đãi chỉ có tại TENTEN. + Tặng miễn phí bộ plugin SEO hỗ trợ website ONTOP Goole:

    • Rank Math Pro - tối ưu SEO
    • WP rocket - Tăng tốc độ tải trang
    • Imagify - Nén dung lượng ảnh

+ Bảo mật 99,99% + Backup dữ liệu thường xuyên + Hỗ trợ kỹ thuật 24/7 LỰA CHỌN HOSTING PHÙ HỢP TẠI ĐÂY

Django là gì?

Django là một framework web cao cấp được viết bằng Python, nổi tiếng với khả năng giúp lập trình viên phát triển các ứng dụng web một cách nhanh chóng và an toàn.

Django tuân thủ nguyên tắc "Don't Repeat Yourself" (DRY), tức là giảm thiểu việc lặp lại mã, và cung cấp một kiến trúc mạnh mẽ, linh hoạt để xây dựng các ứng dụng từ quy mô nhỏ đến lớn.

Một số đặc điểm nổi bật của Django bao gồm hệ thống ORM (Object-Relational Mapping) mạnh mẽ, hỗ trợ bảo mật mặc định với tính năng như bảo vệ CSRF, XSS, và SQL Injection, cùng với khả năng quản lý dự án dễ dàng thông qua các công cụ như admin site được tự động tạo ra.

Django cũng được đánh giá cao nhờ vào cộng đồng phát triển mạnh mẽ và tài liệu phong phú, giúp lập trình viên dễ dàng học tập và triển khai các dự án của mình.

Tại sao nên cài đặt Django

Cài đặt Django là một lựa chọn tuyệt vời cho bất kỳ ai muốn phát triển các ứng dụng web mạnh mẽ và an toàn một cách nhanh chóng.

Django không chỉ đơn thuần là một framework dễ học và dễ sử dụng, mà nó còn cung cấp nhiều tính năng tiên tiến giúp tiết kiệm thời gian và công sức cho lập trình viên.

Việc tích hợp sẵn các công cụ bảo mật, hệ thống quản lý cơ sở dữ liệu ORM, cùng với giao diện quản trị tự động là những lý do quan trọng khiến Django trở thành một trong những lựa chọn hàng đầu cho các dự án web.

Hơn nữa, với cộng đồng người dùng lớn và tài liệu phong phú, Django cung cấp một môi trường phát triển mạnh mẽ và liên tục được cải thiện, đảm bảo rằng các ứng dụng của bạn sẽ luôn được hỗ trợ và nâng cấp theo thời gian.

Hướng dẫn cài đặt Django lên hosting sử dụng cPanel

Bởi Django là một framework viết bằng Python, nên muốn cài đặt Django, trước tiên bạn cần tạo một ứng dụng Python trong cPanel.

cài đặt django 2

Tạo ứng dụng Python trong cPanel

- Đăng nhập vào tài khoản cPanel của bạn

- Tìm menu "Python application setup" và bấm vào đó

- Trong trang hiện ra, bấm "Create Application"

- Chọn "Python version" là "3.8.1" (hoặc cao hơn)

- Đặt tên cho thư mục ứng dụng (Application root/home/cpanel_username), ví dụ: myapp

- Trong phần Application URL, chọn tên miền và để trống phần còn lại

- Bạn cũng nên để trống các phần "Application launch file" và "Application entry point"

- Trong trường sau "Passenger log file", bạn có thể nhập tên tập tin log để hỗ trợ việc sửa lỗi sau này.

- Sau đó bấm nút "Create" ở góc trên bên phải. cPanel sẽ tạo ứng dụng Python và thiết lập các biến môi trường.

- Copy câu lệnh sau "Enter to the virtual environment. To enter to virtual environment, run the command:" ở trên cùng của trang, bởi bạn sẽ cần câu lệnh này để cấu hình ứng dụng.

Cài đặt Django

Sau khi tạo ứng dụng Python, bạn cần sử dụng "Terminal" trong cPanel để tiếp tục cài đặt Django.

Trước tiên, kích hoạt môi trường ảo bằng cách dán và chạy cầu lệnh vừa được copy ở trên. Ví dụ:

source /home/cpanel_username/virtualenv/application/3.8/bin/activate && cd /home/cpanel_username/application

Để cài đặt Django, tiếp tục chạy các câu lệnh sau:

cd ~
pip install django==2.1.8

Tạo dự án Django:

django-admin startproject application ~/application

Tạo các thư mục dự án:

mkdir -p ~/application/templates/static_pages
mkdir ~/application/static_files
mkdir ~/application/static_media

Sử dụng một trình soạn thảo, mở tập tin ~/application/application/settings.py và thực hiện các thay đổi dưới đây:

- Tìm dòng "ALLOWED_HOSTS" và thêm vào như sau, nhớ thay vi-du.com bằng tên miền của bạn: ALLOWED_HOSTS = ['vi-du.com']

- Tìm khối "TEMPLATES" và chỉnh sửa lại:

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

- Tìm dòng "STATIC_URL" và thêm các dòng:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static_files')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "static_media")

- Dùng một trình soạn thảo, mở tập tin ~/application/application/urls.py và xóa toàn bộ nội dung của nó, sau đó dán nội dung sau:

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from django.conf.urls import url
from django.views.generic.base import TemplateView

urlpatterns = [
path('admin/', admin.site.urls),
url(r'^$', TemplateView.as_view(template_name='static_pages/index.html'), name='home'),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

- Dùng một trình soạn thảo, mở tập tin ~/application/passenger_wsgi.py, sau đó xóa toàn bộ nội dung của nó và dán nội dung sau:

import os
import sys

import django.core.handlers.wsgi
from django.core.wsgi import get_wsgi_application

# Set up paths and environment variables
sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = 'alkalmazas.settings'

# Set script name for the PATH_INFO fix below
SCRIPT_NAME = os.getcwd()

class PassengerPathInfoFix(object):
    """
        Sets PATH_INFO from REQUEST_URI because Passenger doesn't provide it.
    """
    def __init__(self, app):
        self.app = app

    def __call__(self, environ, start_response):
        from urllib.parse import unquote
        environ['SCRIPT_NAME'] = SCRIPT_NAME
        request_uri = unquote(environ['REQUEST_URI'])
        script_name = unquote(environ.get('SCRIPT_NAME', ''))
        offset = request_uri.startswith(script_name) and len(environ['SCRIPT_NAME']) or 0
        environ['PATH_INFO'] = request_uri[offset:].split('?', 1)[0]
        return self.app(environ, start_response)

# Set the application
application = get_wsgi_application()
application = PassengerPathInfoFix(application)

- Sau đó tạo tập tin index.html trong thư mục ~/application/templates/static_pages.

- Chạy câu lệnh: python ~/application/manage.py migrate 

- Tạo người dùng quản trị bằng câu lệnh: python ~/application/manage.py createsuperuser

- Bạn có thể compile nội dung tĩnh bằng câu lệnh: python ~/application/manage.py collectstatic

- Khởi động lại Python trong cPanel bằng cách tìm "Python Setup" trong cPanel, vào tab "Web Applications", tìm ứng dụng và bấm "Restart Application" trong cột "Actions"

cài đặt django 3

Chúc mừng bạn đã cài đặt xong Django trong cPanel!

Hosting tốc độ cao - Chất lượng tốt [ Tặng miễn phí trọn bộ plugin SEO trị giá 359$ ]

+ Giá không thể tốt hơn: Chỉ từ 3K/ngày kèm nhiều ưu đãi chỉ có tại TENTEN. + Tặng miễn phí bộ plugin SEO hỗ trợ website ONTOP Goole:

    • Rank Math Pro - tối ưu SEO
    • WP rocket - Tăng tốc độ tải trang
    • Imagify - Nén dung lượng ảnh

+ Bảo mật 99,99% + Backup dữ liệu thường xuyên + Hỗ trợ kỹ thuật 24/7 LỰA CHỌN HOSTING PHÙ HỢP TẠI ĐÂY

Bài liên quan

Tin tức hưu ích với bạn

  • Lỗi dns

    10 Cách fix lỗi DNS server isn’t responding, nguyên nhân lỗi này là gì?

    Blog, Tin tức 04/11/2024
  • domain registration promotion 1

    Domain registration promotion là gì? Mẹo tận dụng hiệu quả các chương trình này

    Blog, Tin tức 04/11/2024

Bạn có bỏ lỡ tin tức nào không?

  • Lỗi dns

    10 Cách fix lỗi DNS server isn’t responding, nguyên nhân lỗi này là gì?

    Blog, Tin tức 04/11/2024
  • domain registration promotion 1

    Domain registration promotion là gì? Mẹo tận dụng hiệu quả các chương trình này

    Blog, Tin tức 04/11/2024
  • domain expertise 1

    Domain expertise là gì? Tầm quan trọng của domain expertise

    Blog, Tin tức 02/11/2024
  • tên miền zalo 1

    Tên miền Zalo là gì? Mẹo cấu hình tên miền về link Zalo cực dễ

    Blog, Tin tức 01/11/2024