Django là một nền tảng ứng dụng web được viết bằng python theo kiến trúc MVC (Model-View-Controller), miễn phí và được phát hành theo giấy phép nguồn mở. Nó nhanh và được thiết kế để giúp các nhà phát triển đưa ứng dụng của họ lên mạng nhanh nhất có thể. Django giúp các nhà phát triển tránh nhiều lỗi bảo mật phổ biến như SQL Injection, XSS, CSRF và clickjacking. Django được bảo trì bởi Django Software Foundation và được nhiều công ty công nghệ lớn, chính phủ và các tổ chức khác sử dụng. Một số trang web lớn như Pinterest, Mozilla, Instagram, Discuss, The Washington Post, v.v. được phát triển bằng Django.
Trong hướng dẫn này, chúng ta sẽ cài đặt Django 1.9 trên máy chủ Ubuntu 15.04. Django có thể được cài đặt trên máy chủ theo nhiều cách, trong hướng dẫn này, tôi sẽ chỉ cho bạn 3 cách khác nhau để cài đặt Django:
Pip là hệ thống quản lý gói cho python. Các gói Python có thể được quản lý và cài đặt dễ dàng bằng pip. Python có máy chủ lưu trữ gói trung tâm riêng, vì vậy chúng ta có thể tải xuống các gói python từ đó, được gọi là Python Package Index (PyPI).
Trong hướng dẫn này, chúng ta sẽ sử dụng Python phiên bản 3 cho Django theo khuyến nghị từ trang web chính thức của Django. Nếu bạn đã cài đặt python 2, bạn có thể cài đặt pip2. Nhưng trong hướng dẫn này, chúng ta sẽ cài đặt pip cho Python 3, cài đặt python3-pip từ kho lưu trữ Ubuntu bằng lệnh apt sau:
Quá trình cài đặt sẽ cài đặt một tệp nhị phân mới có tên là 'pip3', để dễ sử dụng pip, tôi sẽ tạo một liên kết tượng trưng cho pip3 tới pip:
Bây giờ hãy kiểm tra phiên bản:
Quá trình cài đặt pip đã hoàn tất và bây giờ chúng ta có thể sử dụng lệnh pip để cài đặt các gói python.
Lưu ý: Sử dụng django==1.9 để cài đặt phiên bản cụ thể, trong trường hợp của chúng tôi là phiên bản 1.9. Nếu bạn muốn phiên bản khác, chỉ cần thay đổi số thành ví dụ. django==1.8.
Khi quá trình cài đặt hoàn tất, hãy kiểm tra phiên bản django bằng lệnh bên dưới:
Chúng ta cũng có thể sử dụng tập lệnh python ngắn bên dưới để xác minh phiên bản Django:
Như bạn thấy, Django 1.9 đã được cài đặt trên hệ thống bằng pip.
Virtualenv có sẵn trên PyPI, chúng ta có thể cài đặt bằng lệnh pip:
Khi quá trình cài đặt virtualenv hoàn tất, chúng ta có thể sử dụng lệnh virtualenv để tạo một môi trường python mới. Vậy hãy tạo nó với python3 là phiên bản python và pip3 cho cài đặt và dự án django.
Lưu ý:
--python=python3.4 là tệp nhị phân cho python 3.
mynewenv là tên của môi trường.
Lệnh sẽ tạo một thư mục mới có tên là 'mynewenv' chứa các thư mục bin, include và lib.
Môi trường "virtualenv" đã được tạo, bây giờ hãy đăng nhập vào môi trường ảo bằng lệnh bên dưới:
Nếu bạn không có lệnh nguồn, bạn có thể chạy lệnh này:
Lưu ý: Nếu bạn muốn thoát khỏi môi trường ảo, bạn có thể sử dụng lệnh 'deactivate'.
Bây giờ hãy kiểm tra phiên bản pip:
Pip sẽ tự động được cài đặt bên trong môi trường ảo.
Tiếp theo, cài đặt django trong môi trường ảo mà chúng ta đã tạo:
Khi quá trình cài đặt hoàn tất, hãy kiểm tra cài đặt django:
Django 1.9 đã được cài đặt thành công trong môi trường ảo của chúng ta.
Bây giờ hãy sao chép kho lưu trữ django git bằng lệnh git bên dưới:
Và cài đặt django bằng lệnh pip bên dưới:
-e = Cài đặt một gói ở chế độ có thể chỉnh sửa hoặc gói cục bộ, trong hướng dẫn này, chúng tôi cài đặt django từ mã cục bộ mà chúng tôi đã sao chép.
Khi quá trình cài đặt hoàn tất, hãy kiểm tra phiên bản Django trên máy chủ:
Chúng ta thấy rằng Phiên bản Django là 1.10 dev.
Đó là tất cả những gì cần cài đặt phiên bản Django mới nhất theo cách thủ công.
Cài đặt virtualenv trên máy chủ và tạo một môi trường mới có tên là 'firstdjango':
Bây giờ hãy đến thư mục firstdjango và kích hoạt môi trường ảo, sau đó cài đặt Django bằng lệnh pip:
Django đã được cài đặt.
Tiếp theo, hãy tạo một dự án mới có tên 'myblog' với lệnh django-admin:
Điều này sẽ tạo một thư mục mới "myblog" chứa các tệp Django:
Đi tới thư mục "myblog" và chạy tệp 'manage.py':
Tùy chọn runserver sẽ tạo kết nối HTTP với python trên máy chủ cục bộ và cổng 8000. Nếu môi trường phát triển của bạn nằm trên máy chủ, trong ví dụ này, tôi đang sử dụng máy chủ ubuntu với IP: 192.168.1.100, bạn có thể sử dụng IP của máy chủ để truy cập từ bên ngoài máy chủ.
Bây giờ hãy kiểm tra từ Trình duyệt của bạn: 192.168.1.106:8000
Trang mặc định của Django hiện ra, do đó Django đang hoạt động bình thường. Trên shell của máy chủ, bạn có thể xác minh trong nhật ký truy cập:
Bây giờ chúng ta sẽ cấu hình "Django admin", Django sẽ tự động tạo cơ sở dữ liệu cho một siêu người dùng, trước khi chúng ta tạo siêu người dùng, hãy chạy lệnh bên dưới:
migrate: thêm các mô hình của bạn (thêm trường, xóa, v.v.) vào lược đồ cơ sở dữ liệu, cơ sở dữ liệu mặc định là sqlite3.
Bây giờ hãy tạo người dùng quản trị:
Django super user đã được thêm vào, giờ bạn có thể sử dụng lệnh runserver để khởi động Django admin. Mở trình duyệt và truy cập trang quản trị Django:
Truy cập trang quản trị Django tại /admin/ URL: 192.168.1.106:8000/admin/. Đăng nhập bằng tên người dùng "admin" và mật khẩu của bạn, bạn sẽ thấy trang quản trị:
Bây giờ Django đã được cài đặt bên trong môi trường ảo và chúng tôi đã tạo một dự án mẫu Django có tên là 'firstdjango'.
Trong hướng dẫn này, chúng ta sẽ cài đặt Django 1.9 trên máy chủ Ubuntu 15.04. Django có thể được cài đặt trên máy chủ theo nhiều cách, trong hướng dẫn này, tôi sẽ chỉ cho bạn 3 cách khác nhau để cài đặt Django:
- Cài đặt Django bằng pip.
- Cài đặt Django bằng virtualenv.
- Cài đặt Django từ kho lưu trữ github của nó.
Điều kiện tiên quyết
- Ubuntu 15.04 - 64bit.
- Root privileges.
Bước 1 - Cập nhật kho lưu trữ Ubuntu
Trước khi bắt đầu cài đặt Django, chúng ta nên cập nhật kho lưu trữ Ubuntu. Đăng nhập vào máy chủ và giành quyền sudo/root:
Mã:
sudo su
apt-get update
Bước 2 - Cài đặt Django
Trong bước này, tôi sẽ chỉ cho bạn 3 phương pháp khác nhau để cài đặt Django. Vui lòng chọn phương pháp phù hợp nhất. Vì vậy, hãy sử dụng Pip, virtualenv hoặc GIT nhưng không sử dụng cả ba phương pháp cùng một lúc.Pip là hệ thống quản lý gói cho python. Các gói Python có thể được quản lý và cài đặt dễ dàng bằng pip. Python có máy chủ lưu trữ gói trung tâm riêng, vì vậy chúng ta có thể tải xuống các gói python từ đó, được gọi là Python Package Index (PyPI).
Trong hướng dẫn này, chúng ta sẽ sử dụng Python phiên bản 3 cho Django theo khuyến nghị từ trang web chính thức của Django. Nếu bạn đã cài đặt python 2, bạn có thể cài đặt pip2. Nhưng trong hướng dẫn này, chúng ta sẽ cài đặt pip cho Python 3, cài đặt python3-pip từ kho lưu trữ Ubuntu bằng lệnh apt sau:
Mã:
apt-get install python3-pip
Mã:
which pip3
ln -s /usr/bin/pip3 /usr/bin/pip
Mã:
pip -V
Quá trình cài đặt pip đã hoàn tất và bây giờ chúng ta có thể sử dụng lệnh pip để cài đặt các gói python.
1. Cài đặt Django với Pip
Bây giờ chúng ta hãy cài đặt django trên máy chủ bằng lệnh pip bên dưới:
Mã:
pip3 install django==1.9
Khi quá trình cài đặt hoàn tất, hãy kiểm tra phiên bản django bằng lệnh bên dưới:
Mã:
django-admin --version
Mã:
python3
import django
print(django.get_version())
Như bạn thấy, Django 1.9 đã được cài đặt trên hệ thống bằng pip.
2. Cài đặt Django bằng Virtualenv
Virtualenv là trình xây dựng môi trường python, được sử dụng để tạo các môi trường python bị cô lập. Chúng ta có thể chọn phiên bản python sẽ được cài đặt trong môi trường. Điều này rất hữu ích cho các nhà phát triển, họ có thể chạy và phát triển ứng dụng với nhiều phiên bản python khác nhau và nhiều cài đặt môi trường khác nhau trên một hệ điều hành.Virtualenv có sẵn trên PyPI, chúng ta có thể cài đặt bằng lệnh pip:
Mã:
pip install virtualenv
Mã:
virtualenv --python=python3.4 mynewenv
--python=python3.4 là tệp nhị phân cho python 3.
mynewenv là tên của môi trường.
Lệnh sẽ tạo một thư mục mới có tên là 'mynewenv' chứa các thư mục bin, include và lib.
Môi trường "virtualenv" đã được tạo, bây giờ hãy đăng nhập vào môi trường ảo bằng lệnh bên dưới:
Mã:
source myproject/bin/activate
Mã:
. mynewenv/bin/activate
Lưu ý: Nếu bạn muốn thoát khỏi môi trường ảo, bạn có thể sử dụng lệnh 'deactivate'.
Bây giờ hãy kiểm tra phiên bản pip:
Mã:
[I]pip -V
[/I]
Tiếp theo, cài đặt django trong môi trường ảo mà chúng ta đã tạo:
Mã:
pip install django==1.9
Mã:
django-admin --version
Django 1.9 đã được cài đặt thành công trong môi trường ảo của chúng ta.
3. Cài đặt Django từ Git Repository
Trong phần này, chúng ta sẽ cài đặt Django web framework trực tiếp trên hệ thống chứ không phải trong môi trường ảo. Tôi sẽ chỉ cách cài đặt mã mới nhất theo cách thủ công từ Django GIT repository. Đảm bảo rằng bạn đã cài đặt git trên máy chủ của mình, nếu bạn chưa có git, hãy cài đặt bằng lệnh bên dưới:
Mã:
apt-get install git -y
Mã:
cd ~
git clone git://github.com/django/django django-dev
Mã:
pip install -e django-dev/
Khi quá trình cài đặt hoàn tất, hãy kiểm tra phiên bản Django trên máy chủ:
Mã:
django-admin --version
1.10.dev20151213153331
Đó là tất cả những gì cần cài đặt phiên bản Django mới nhất theo cách thủ công.
Bước 3 - Tạo Dự án đầu tiên của bạn với Django
Trong chương này, chúng ta sẽ cài đặt Django trong môi trường ảo và sau đó bắt đầu dự án đầu tiên của mình với django.Cài đặt virtualenv trên máy chủ và tạo một môi trường mới có tên là 'firstdjango':
Mã:
pip install virtualenv
virtualenv --python=python3.4 firstdjango
Mã:
cd firstdjango/
source bin/activate
pip install django==1.9
Django đã được cài đặt.
Tiếp theo, hãy tạo một dự án mới có tên 'myblog' với lệnh django-admin:
Mã:
django-admin startproject myblog
Mã:
ll myblog
-rwxr-xr-x 1 root root 249 15 tháng 12 09:01 manage.py*
drwxr-xr-x 2 root root 4096 15 tháng 12 09:01 myblog/
Mã:
cd myblog/
python manage.py runserver
Mã:
python manage.py runserver 192.168.1.106:8000
Trang mặc định của Django hiện ra, do đó Django đang hoạt động bình thường. Trên shell của máy chủ, bạn có thể xác minh trong nhật ký truy cập:
Mã:
[15/12/2015 09:08:12] "GET / HTTP/1.1" 200 1767
Mã:
python manage.py migrate
Bây giờ hãy tạo người dùng quản trị:
Mã:
python manage.py createsuperuser
Tên người dùng (để trống để sử dụng 'root'): admin
Địa chỉ email: [emailprotected]
Mật khẩu:
Mật khẩu (một lần nữa):
Siêu người dùng đã được tạo thành công.
Mã:
python manage.py runserver 192.168.1.106:8000
Bây giờ Django đã được cài đặt bên trong môi trường ảo và chúng tôi đã tạo một dự án mẫu Django có tên là 'firstdjango'.