Cách cài đặt và bắt đầu với CMS Mezzanine trên Django trên Ubuntu
Hệ thống quản lý nội dung (CMS) là một ứng dụng nhằm mục đích giúp mọi người xuất bản nội dung thuộc nhiều loại trực tuyến… ít nhất đó là những gì họ phải làm. Với nhu cầu ngày càng phổ biến và ngày càng tăng, hầu hết các ứng dụng CMS đã đạt đến mức khó sử dụng hơn so với việc tạo ra giải pháp của bạn dựa trên một khuôn khổ.May mắn là có một số trường hợp ngoại lệ tuyệt vời cho luật này - Mezzanine CMS là một trong số đó.
Được xây dựng trên nền tảng web Django mạnh mẽ (và có thể mở rộng), Mezzanine mang đến cho các nhà phát triển web và những người đam mê xuất bản trực tuyến một chuyến đi thực sự suôn sẻ ngay từ đầu với cách xây dựng trang web cực kỳ trực quan.
Trong bài viết DigitalOcean này, ta sẽ xem cách chuẩn bị một server cloud Ubuntu 13 hoàn toàn mới để cài đặt và triển khai một trang web dựa trên Mezzanine CMS ngay từ đầu. Tiếp tục, ta sẽ xem cách bắt đầu với thư viện thanh lịch này khi ta xuất bản phần nội dung đầu tiên của bạn .
Bảng chú giải
1. Django Tóm tắt
2. CMS tầng lửng
- Đặc trưng
- Hỗ trợ của bên thứ ba
- Hoàn thành module ứng dụng
3. Bắt đầu: Chuẩn bị Ubuntu Server
4. Cài đặt Mezzanine
- Môi trường ảo Python cho tầng lửng
- Cài đặt tầng lửng và phụ thuộc
5. Làm việc với tầng lửng
- Tạo một dự án
- Khởi tạo database
- Cấu hình cơ bản
- Kiểm tra ứng dụng
- Tạo nội dung đầu tiên của bạn
6. Sẵn sàng cho Sản xuất
7. Tóm tắt
Django trong tóm tắt
Django là một khung phát triển web dựa trên ngôn ngữ lập trình Python . Là một dự án và thư viện cực kỳ lớn, nó đóng gói và vận chuyển hàng tấn công cụ và tính năng cho các nhà phát triển mong muốn được bắt đầu nhanh chóng. Nếu bạn sẵn sàng dành một lượng thời gian đáng kể để “học” một khung công tác nhằm tiết kiệm một số trong tương lai, Django cho Python có lẽ là giải pháp phù hợp.
Với bản chất của chúng, các khung công tác mạnh mẽ không chỉ hữu ích cho việc tạo các ứng dụng hoặc API tùy chỉnh mà còn cả phần mềm đóng gói, nhằm giải quyết một số vấn đề cụ thể. Một trong những phần mềm tùy chỉnh được xây dựng trên Django là Mezzanine CMS.
CMS tầng lửng
Mezzanine - như ta đã đề cập - là một hệ thống quản lý nội dung được xây dựng trên nền tảng phát triển web phổ biến Django. Mặc dù nó yêu cầu một số kiến thức về ngôn ngữ lập trình Python và một mức độ quen thuộc nhất định với Django, việc bắt đầu sử dụng Mezzanine để tạo một trang web đơn giản hơn nhiều so với các công cụ và thư viện quản lý nội dung khác, đặc biệt là các thư viện dựa trên các ngôn ngữ khác.
Đặc trưng
Là một CMS, Mezzanine đi kèm với rất nhiều chức năng hữu ích đáp ứng phần lớn các nhu cầu chung mà các nhà phát triển web mong đợi nhận được từ các ứng dụng như vậy. Vì Django có thể mở rộng dễ dàng, Mezzanine cũng được bao quanh bởi nhiều gói bên thứ ba bổ sung có thể giúp bạn định hình trang web theo cách nào bạn thích. Trên thực tế, bản thân Mezzanine là một phần mở rộng, hoặc một ứng dụng Django.
Dưới đây là một số tính năng phổ biến của CMS Mezzanine:
-
Xuất bản theo lịch trình;
-
Sắp xếp trang Kéo và Thả (DaD);
-
Chủ đề thông qua thị trường chủ đề;
-
Quản lý account và xác minh e-mail;
-
Chia sẻ nội dung xã hội dễ dàng;
-
Di động (ví dụ: điện thoại thông minh, máy tính bảng, v.v.) thân thiện với họ;
-
Lọc thư rác;
-
Rút ngắn URL;
-
Tích hợp Disqus và Gravatar;
-
Triển khai tự động;
-
Công cụ viết blog tích hợp;
-
Biên tập nội dung trực quan;
-
Gắn thẻ;
-
Tùy chỉnh các loại nội dung riêng lẻ và phong cách của chúng;
-
Di chuyển dễ dàng;
và nhiều hơn nữa.
Hỗ trợ của bên thứ ba
Hưởng lợi từ khả năng mở rộng của Django, Mezzanine hiện hỗ trợ nhiều thư viện và module bổ sung nhằm giúp các nhà phát triển với các nhu cầu khác nhau của họ.
Một số module của bên thứ ba phổ biến là:
-
mdown:
Các tiện ích và bộ lọc để tạo và xuất bản nội dung bằng Markdown. -
Chủ đề:
Bộ sưu tập chủ đề cho Django (do đó Mezzanine). -
Mã ngẫu nhiên:
Hỗ trợ captcha tự động cho trình tạo biểu mẫu Mezzanine. -
Trang trình bày:
Hiển thị slide đáp ứng. -
Lịch:
Triển khai lịch cho Tầng lửng. -
Podcast:
Trình quản lý podcast. -
Các trang:
Dễ dàng thêm hình nền riêng lẻ cho các trang Mezzanine. -
Twittertopic:
Giúp quản lý các chủ đề twitter. -
Công thức nấu ăn:
Trình cắm xuất bản công thức.
Hoàn thành module ứng dụng
Một số module Mezzanine cho phép tạo ứng dụng web hoàn chỉnh với các tính năng độc đáo, chẳng hạn như trang web thương mại điện tử.
Một số module tùy chỉnh phổ biến này là:
-
Hộp đạn:
Một module mua sắm trực tuyến / thương mại điện tử. -
Dấu trang:
Một ứng dụng đánh dấu nhiều user . -
Thăm dò ý kiến:
Một ứng dụng bỏ phiếu. -
Nghề nghiệp:
Một ứng dụng đăng tuyển. -
Wiki:
Một giải pháp wiki.
Bắt đầu: Chuẩn bị VPS Ubuntu của bạn
Mezzanine là một dự án Python và bạn cần điều chỉnh hệ thống của bạn một cách chính xác để cài đặt và chạy trang web mà không gặp trục trặc hoặc lỗi.
Nếu bạn chưa chuẩn bị server cho việc này, hãy nhanh chóng đến với bài viết Ubuntu / Python :
Và tiếp tục với các hướng dẫn cài đặt Mezzanine được tìm thấy bên dưới.
Cài đặt Mezzanine
Ta sẽ sử dụng công cụ Python virtualenv tuyệt vời để cài đặt và chứa Mezzanine cũng như các phụ thuộc của nó. Do đó, trong phần này, ta sẽ bắt đầu với việc tạo môi trường.
Môi trường ảo Python cho tầng lửng
Nếu bạn chưa có, hãy tạo một môi trường ảo:
virtualenv mezzanine_env cd mezzanine_env
Hoặc kích hoạt nó:
source bin/activate
Cài đặt tầng lửng và phụ thuộc
Khi ta đã sẵn sàng môi trường, ta có thể sử dụng trình quản lý gói pip để cài đặt Mezzanine và tất cả các phần phụ thuộc.
Chạy lệnh sau để cài đặt Mezzanine bằng pip
:
pip install mezzanine
Bạn cũng có thể cần lắp gối
pip install pillow
Làm việc với tầng lửng
Là một công cụ dựa trên Django, Mezzanine đi kèm với các tính năng giống như Django. Một trong những hạng mục như vậy được vận chuyển cùng với Mezzanine là mezzanine-project
được sử dụng cho các việc quản trị (admin task) .
Hãy bắt đầu làm việc với Mezzanine.
Tạo một dự án
Tạo một trang web mới với Mezzanine dễ dàng như chạy một lệnh duy nhất:
# Usage: mezzanine-project [project name] # Example: mezzanine-project mezzanine_app # Enter the application directory: cd mezzanine_app
Khởi tạo database
Lửng mang lại một số bổ sung tiêu chuẩn của Django manage.py
công cụ quản lý, chẳng hạn như created
hướng dẫn.
Chạy phần sau để tạo và khởi tạo database mẫu:
python manage.py createdb
Sau khi thực hiện lệnh này, bạn sẽ được hỏi một loạt câu hỏi:
# You just installed Django's auth system, # which means you don't have any superusers defined. # Would you like to create one now? (yes/no): yes # ^^ Create an admin account by answering the questions. # Please enter the domain and optional port in # the format 'domain:port'. # For example 'localhost:8000' or 'www.example.com'. # Hit enter to use the default (127.0.0.1:8000): www.example.com:80 # ^^ Enter your domain name. # Would you like to install some initial demo pages? # Eg: About us, Contact form, Gallery. (yes/no): yes # ^^ Create sample data.
Sau khi đã trả lời những câu hỏi này, đã đến lúc kiểm tra ứng dụng.
Cấu hình cơ bản
Để tránh lỗi và làm mọi thứ đúng cách, mặc dù không quá cần thiết, ta cần thực hiện một số cấu hình nhất định.
Hãy chỉnh sửa file settings.py
bằng editor văn bản nano
:
nano settings.py
Cuộn xuống file và tìm ALLOWED_HOSTS
, tức là:
ALLOWED_HOSTS = []
Thay thế bằng:
# ALLOWED_HOSTS = [] # comment out # Example (From Django documentation): ALLOWED_HOSTS = [ '.example.com', # Allow domain and subdomains '.example.com.', # Also allow FQDN and subdomains ] # Replace example.com with your own domain name.
Sau đó, hãy truy cập ngay bên dưới khối comment và tìm:
TIME_ZONE =
Và thay thế nó bằng của bạn , ví dụ:
TIME_ZONE = 'Europe/Amsterdam'
Lưu và thoát bằng cách nhấn CTRL + X và xác nhận với Y.
Kiểm tra ứng dụng
Chạy lệnh sau để chạy một server ứng dụng mẫu để kiểm tra ứng dụng Mezzanine hoàn toàn mới của bạn:
python manage.py runserver 0.0.0.0:8000
Bạn có thể kiểm tra cài đặt của bạn bằng cách truy cập server trên cổng 8000:
http://[your server's IP]:8000
Lưu ý: Để kết thúc server thử nghiệm, hãy nhấn CTRL + C.
Tạo nội dung đầu tiên của bạn
Hãy xuất bản một số nội dung mới và xem cách sử dụng Mezzanine dễ dàng như thế nào.
Truy cập phần quản trị bằng cách đi tới:
http://[your server's IP]:8000/admin
Đăng nhập bằng thông tin đăng nhập administrator bạn đã đặt và nhấn “Đăng nhập”.
Bạn sẽ thấy Trang tổng quan. Từ đây, bạn có thể xuất bản bài đăng blog nhanh hoặc di con trỏ qua menu thả xuống Nội dung và chọn bất kỳ mục nào bạn muốn chỉnh sửa, ví dụ:
- Các trang:
http: // [IP của server nước của bạn]: 8000 / admin / pages / page /
Sẵn sàng cho Sản xuất
Khi bạn hoàn tất việc tạo dự án Mezzanine, bạn nên cố gắng tránh phụ thuộc vào server thử nghiệm mà ứng dụng đi kèm.
Để triển khai, phải sử dụng server ứng dụng web chính thức (ví dụ: Unicorn), tốt hơn là đằng sau Reverse Proxy để xử lý quá trình xử lý ban đầu các yêu cầu và phân phối file tĩnh, chẳng hạn như hình ảnh.
Để có được ý tưởng tổng thể nhanh chóng về cách bắt đầu production , hãy xem tiêu đề phần “Sẵn sàng cho production ” trong bài viết : Cách chuẩn bị server cloud Ubuntu cho ứng dụng web Python .
Tóm lược
Nếu bạn đã xem qua bài viết này một lần hoặc chỉ đơn giản là muốn có một bản tóm tắt nhanh về hướng dẫn cài đặt để giúp bạn bắt đầu, hãy kiểm tra bên dưới:
# Preare the system and install Python tools: aptitude update aptitude -y upgrade aptitude install -y build-essential aptitude install -y cvs subversion git-core mercurial aptitude install python-setuptools python-dev python2.7-dev python-software-properties libpq-dev aptitude install libtiff4-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python - curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python - export PATH="/usr/local/bin:$PATH" pip install virtualenv # Create a virtual environment: virtualenv mezzanine_env cd mezzanine_env source bin/activate pip install mezzanine # Create a Mezzanine project: mezzanine-project mezzanine_app cd mezzanine_app python manage.py createdb --noinput # Run the testing server: python manage.py runserver 0.0.0.0:8000
Lưu ý: Lệnh cuối cùng created
bằng cờ --noinput
sẽ cho phép bạn chạy database mà không bị đặt câu hỏi. Tên admin- user sẽ là admin
và password của bạn default
. Từ đây, bạn tiếp tục cấu hình và thử nghiệm.
<div class = "author"> Gửi bởi: <a
href = “https://twitter.com/ostezer”> Hệ điều hành Tezer </a> </div>
Các tin liên quan
Cách thiết lập server cloud Ubuntu cho ứng dụng web Python2014-02-25
Cách cài đặt Django CMS phiên bản 3 Beta 3 với Django 1.6 trên Ubuntu
2014-02-25
Làm thế nào để Dockerise và triển khai nhiều ứng dụng WordPress trên Ubuntu
2014-02-13
Cách cài đặt Ruby 2.1.0 và Sinatra trên Ubuntu 13 với RVM
2014-02-10
Cách tạo Sách dạy nấu ăn Đầu bếp Đơn giản để Quản lý Cơ sở hạ tầng trên Ubuntu
2014-02-03
Cách cài đặt MariaDB từ Binary Tarballs trên Ubuntu 13.10
2014-01-28
Cách thiết lập một cụm Serf trên một số VPS Ubuntu
2014-01-23
Cách cấu hình Cụm Galera với MariaDB trên server Ubuntu 12.04
2014-01-20
Cách cài đặt Neo4J trên VPS Ubuntu
2014-01-15
Cách sử dụng PM2 để thiết lập môi trường sản xuất Node.js trên VPS Ubuntu
2014-01-10