Thứ hai, 30/12/2013 | 00:00 GMT+7

Cách cài đặt và thiết lập Kohana, Khung phát triển ứng dụng web PHP

Trong số nhiều khung công tác dựa trên PHP, Kohana tạo ra sự khác biệt với phần còn lại với tư tưởng tuân theo các quy ước và luật chung để phát triển các ứng dụng web hướng đối tượng hoàn chỉnh. Khung được cấp phép BSD này không đi kèm với các chuỗi thương mại kèm theo và nó có một kiểu triết lý xây dựng theo cộng đồng, vì cộng đồng .


Trong loạt bài DigitalOcean ba phần này, ta sẽ đề cập đến tất cả các yếu tố cần thiết mà một nhà phát triển nên quen thuộc để bắt đầu xây dựng các ứng dụng web bằng khung PHP5 Kohana. Ta sẽ bắt đầu với việc điểm qua một số khái niệm cơ bản, tiếp tục thông qua các khái niệm và module chính sau khi cài đặt framework.

Lưu ý: Đây là bài viết đầu tiên trong loạt bài Kohana của ta - và nó chủ yếu bao gồm những điều cơ bản và cách cài đặt. Để tiếp tục tìm hiểu khung tạo ứng dụng web, hãy xem phần tiếp theo của nó Xây dựng ứng dụng web với HMVC PHP5 Framework Kohana .

Bảng chú giải


1. Khung phát triển ứng dụng web


1. What Are Frameworks? 2. What Makes a Framework "Light"? 

2. Khung Kohana


1. Kohana's Features 2. Kohana's Standard (Out-of-The-Box) Modules 

3. Model - View - Controller Pattern


1. Routing Structure 2. Model 3. View 4. Controller 5. Template Files 

4. Lập trình với Kohana và Chế phẩm


5. Download và cài đặt Kohana Framework


6. Bắt đầu với cài đặt Kohana


1. Bootstrapping The Setup 2. Setting Application Directory Permissions 3. Finalizing Everything and Testing 

Khung phát triển ứng dụng web


Kohana là một khung phát triển ứng dụng web. Với bản chất của PHP là một ngôn ngữ và cách mã được viết được thực thi trên máy tính, không có yêu cầu nghiêm ngặt để khai thác các khuôn khổ để nhanh chóng phát triển các ứng dụng khi làm việc với nó. Tuy nhiên, đối với bất kỳ ứng dụng nghiêm túc nào nhằm mục đích có vòng đời dài (-một chút) (sử dụng mã đã được viết một lần và với nhiều hơn một nhà phát triển duy nhất làm việc trên nó), việc sử dụng một khuôn khổ nghĩa là làm cho rất nhiều thứ đơn giản hơn nhiều.

Khung là gì?


Giống như định nghĩa từ điển của khung từ, các khung ứng dụng web cung cấp cả cấu trúc thiết yếu để bắt đầu phát triển [ứng dụng] và lớp keo để giữ mọi thứ lại với nhau theo cách hợp lý và hợp lý đối với những người đã quen với chính khung .

Những cơ sở này đi kèm với nhiều công cụ phổ biến cần thiết hầu như luôn cần thiết để phát triển các ứng dụng web như xử lý các yêu cầu đến, tạo và điền mẫu, trả về phản hồi, xử lý bảo mật và xác thực, quản lý cookie (và phiên) và hơn thế nữa .

Điều gì tạo nên một Framework “nhẹ”?


Tùy thuộc vào số lượng công cụ mà một khuôn khổ được vận chuyển ra khỏi hộp, nó được gọi là giải pháp nhẹ hoặc tất cả trong một (ngăn xếp đầy đủ, bao gồm pin, v.v.). Kohana, mặc dù cực kỳ mạnh mẽ và giàu chức năng, vẫn có thể được coi là nhẹ nhàng vì nó mang lại cho các nhà phát triển sự tự do khi làm việc với nó, cũng như cách nó được thiết kế và cài đặt để hoạt động.

Khung Kohana


Khung công tác Kohana HMVC (Hierarchical Model View Controller) cung cấp - có thể - tất cả các công cụ cần thiết để xây dựng một ứng dụng web hiện đại có thể được phát triển nhanh chóng và triển khai / bảo trì dễ dàng bằng ngôn ngữ PHP [5].

Các tính năng của Kohana


So với các giải pháp tương tự khác, Kohana tạo ra sự khác biệt không phải ở các tính năng của nó mà ở cách nó trình bày các tính năng này và cách nó thực hiện chúng.

  • Kohana đi kèm với nhiều công cụ bổ sung thường được yêu cầu (mô-đun) như mã hóa , xác thực , truy cập database , v.v.

  • Nó cung cấp khả năng mở rộng các giá trị mặc định một cách đơn giản.

  • Cho phép xây dựng các ứng dụng thương mại với giấy phép BSD của nó.

  • Bắt đầu và cài đặt cực kỳ nhanh chóng và dễ dàng so với các khuôn khổ nặng nề và phức tạp.

  • Tất cả các module và cách mọi thứ hoạt động được thiết kế và xây dựng bằng cách sử dụng các lớp và đối tượng. Khuôn khổ duy trì nguyên tắc "Đừng lặp lại chính mình".

  • Cung cấp các công cụ lập profile và gỡ lỗi.

  • Mã của nó được ghi chép rất tốt và nó đi kèm với một tài liệu tương đối tốt với các ví dụ và giải thích tốt.

  • Thích tuân theo các quy ước hơn các cấu hình [vô tận và khó chịu].

Mô-đun tiêu chuẩn của Kohana (Out-of-The-Box)


Dưới đây là một số module độc đáo của Kohana.

  • Auth: Xác thực và ủy quyền user .

  • Bộ nhớ đệm : Giao diện chung cho các công cụ bộ nhớ đệm.

  • Codebench: Công cụ đo điểm chuẩn mã.

  • Database : Truy vấn bất khả tri database và quản lý kết quả.

  • Hình ảnh: Mô-đun thao tác hình ảnh.

  • ORM ( Object Relational Mapper ): Một thư viện mô hình hóa để ánh xạ quan hệ đối tượng.

  • Unittest: Mô-đun kiểm thử đơn vị.

Model - View - Controller Pattern


Mẫu ứng dụng MVC (Model - View - Controller) được sử dụng để chia mã và cấu trúc logic thành các group tùy thuộc vào role của chúng những gì chúng được cài đặt để thực hiện.Mỗi phần này xử lý thông tin bên trong chúng và sau đó chia sẻ kết quả kết quả cần thiết giữa nhau để hoàn thành công việc một cách chung, tạo thành bản trình bày cuối cùng (tức là kết quả) cho user cuối (tức là kết quả của một URL được truy cập).

Cấu trúc định tuyến


Theo mô hình MVC, một yêu cầu trải qua một quá trình - tương tự như ví dụ bên dưới - trước khi trả về một kết quả.

  (1)                       (2)                    (3) Request       --->       Parsing       --->     Matching [Data] .. [] >> .. [] > [] [] [] .. .. .>. .. . ........    (4)                       (5)                    (6) Routing       --->      Controller     --->     Response  ----- .. >> .. >> ..  ../\ .. /\  []  >> [] >>  [Data]                           ||  . ||                          \/  . \/                        Model   View 

Mô hình


Trong mô hình, tồn tại định nghĩa các lớp đối tượng và xử lý các hoạt động dữ liệu. Trong lớp này, không có tương tác trực tiếp với các phần khác của ứng dụng (ví dụ: khung nhìn). Khi một sự kiện mới diễn ra, hãy mô hình cho cha mẹ của nó (tức là bộ điều khiển) biết.

Lượt xem


Lớp dạng xem bao gồm các file nơi các dạng xem (ví dụ: biểu diễn dữ liệu) được tạo ra. Đối tượng controller, sử dụng khung nhìn, trình bày kết quả cuối cùng cho user .

Bộ điều khiển


Trong bộ điều khiển, dữ liệu được phân tích cú pháp từ yêu cầu được xử lý bằng cách sử dụng mô hình và chế độ xem, tạo ra phản hồi file thông qua các hành động . Bộ điều khiển hoạt động như một chất keo, kết nối tất cả các phần để hoạt động với nhau.

Tệp Mẫu


Các file mẫu tạo thành một cơ sở thường được sử dụng để tạo điều kiện thuận lợi cho việc duy trì biểu diễn của một số dữ liệu nhất định được ứng dụng trình bày cho user cuối. Về các ứng dụng PHP, ngôn ngữ PHP hoạt động như một ngôn ngữ tạo mẫu, do đó cung cấp cú pháp tạo mẫu .

Lập trình với Kohana và Chuẩn bị


Kohana, như một khung công tác nhẹ, bao gồm một loạt các file nằm rải rác trên các folder có cấu trúc cẩn thận, cuối cùng, được chuyển đến server production và được sử dụng để chạy ứng dụng web. Do đó, mỗi gói Kohana có thể được coi là một ứng dụng web [mới].

Lưu ý: Trong các ví dụ của ta , ta sẽ làm việc trên một server , chạy version Ubuntu mới nhất. Để xây dựng các ứng dụng web với Kohana, bạn có thể làm việc trên máy tính tại nhà của bạn cho đến bước production và sau đó đẩy mã của bạn để xuất bản.

Lưu ý: Ta sẽ sử dụng LAMP mặc định (Linux - Apache - MySQL - PHP) được cài đặt trong server của ta để làm việc với Kohana. Để nhanh chóng cài đặt LAMP trên server Ubuntu, bạn có thể sử dụng:

sudo apt-get install tasksel sudo tasksel install lamp-server 

Download và cài đặt Kohana Framework


Phiên bản mới nhất hiện có của Kohana là 3.3.1 . Để tải nó xuống VPS của ta , ta sẽ sử dụng wget (tức là công cụ dòng lệnh GNU Wget).

wget https://github.com/kohana/kohana/releases/download/v3.3.1/kohana-v3.3.1.zip 

Sau khi download , ta cần mở rộng gói nén. Đối với điều này, ta sẽ sử dụng lệnh extract và đặt “" my_app làm folder extract .

# You might need to install *unzip* before extracting the files     aptitude install -y unzip   # Unzip and extract the files unzip kohana-v3.3.1.zip -d my_app  # Remove the zip package rm -v kohana-v3.3.1.zip 

Khi ta đã sẵn sàng với gói khuôn khổ, ta có thể di chuyển nó đến một vị trí lâu dài hơn để làm cho nó hoạt động với Apache. Vị trí mặc định để cài đặt LAMP của ta là / var / www /

# Remove the *index.html* inside /var/www rm -v /var/www/index.html  # Move the application directory inside mv my_app /var/www/  # Enter the directory cd /var/www/my_app     

Từ bây giờ, cài đặt của bạn có thể truy cập được từ WWW.

# Visit: http://[your server's IP adde.]/my_app/  http://95.85.44.185/my_app/ 

Lưu ý: Kohana vẫn chưa sẵn sàng hoạt động. Cấu hình của nó cần được đặt trước (tức là khởi động).

Bắt đầu với cài đặt Kohana


Khởi động cài đặt


Trước khi bắt đầu thực hiện các bước để tìm hiểu về cách phát triển một ứng dụng, hãy khởi động và hoàn tất quy trình cài đặt của nó.

Chạy phần sau để chỉnh sửa file bootstrapping bằng editor nano:

nano application/bootstrap.php 

Chỉnh sửa múi giờ của bạn:

# Find date_default_timezone_set and set your timezone date_default_timezone_set('Europe/London'); 

Đặt ngôn ngữ của bạn:

# Find setlocale and set your locale setlocale(LC_ALL, 'en_UK.utf-8'); 

Đặt vị trí folder ứng dụng cơ sở:

# Find base_url and set the base application directory # Relative to the base Apache directory (i.e. /var/www/)  Kohana::init(array(     'base_url' => '/my_app/', )); 

Bật module :

# Find Kohana::modules and uncomment them  Kohana::modules(array(     'auth'       => MODPATH.'auth',       // Basic authentication     'cache'      => MODPATH.'cache',      // Caching with multiple backends     'codebench'  => MODPATH.'codebench',  // Benchmarking tool     'database'   => MODPATH.'database',   // Database access     'image'      => MODPATH.'image',      // Image manipulation     'orm'        => MODPATH.'orm',        // Object Relationship Mapping     'oauth'      => MODPATH.'oauth',      // OAuth authentication     'pagination' => MODPATH.'pagination', // Paging of results     'unittest'   => MODPATH.'unittest',   // Unit testing     'userguide'  => MODPATH.'userguide',  // User guide and API documentation )); 

Lưu và thoát bằng cách nhấn CTRL + X và xác nhận với Y.

Đặt quyền đối với folder ứng dụng


Để chạy Kohana, ta cần đánh dấu hai trong số các folder của nó là có thể ghi được .

sudo chmod -R a+rwx application/cache sudo chmod -R a+rwx application/logs 

Hoàn thiện mọi thứ và kiểm tra


Sau khi hoàn tất việc khởi động cài đặt và cấu hình quyền folder , ta có thể kiểm tra lại tất cả bằng cách truy cập ứng dụng bằng trình duyệt web

# Visit: http://[your server's IP adde.]/my_app/  http://95.85.44.185/my_app/ 

Khi bạn xác nhận mọi thứ được cài đặt chính xác và hoạt động tốt, bạn có thể xóa install.php .

Chạy các bước sau để xóa file cài đặt:

rm -v install.php 

Nếu bạn truy cập lại URL từ bước trước, bạn sẽ được chào đón với lời chào, thế giới! thông điệp. Điều này nghĩa là các yêu cầu của ta hiện được chuyển qua quy trình HMVC theo đúng mẫu.

<div class = "author"> Gửi bởi: <a
href = “https://twitter.com/ostezer”> Hệ điều hành Tezer </a> </div>


Tags:

Các tin liên quan

Cách triển khai ứng dụng Kohana PHP trên VPS Debian 7 / Ubuntu 13 với Nginx và PHP-FPM
2013-12-30
Cách tùy chỉnh MediaWiki bằng tệp LocalSettings.php
2013-09-16
Bắt đầu với Yii PHP Framework - Phần 2
2013-08-12
Cách lưu trữ các phiên PHP trong Memcached trên CentOS VPS
2013-08-05
Cách sử dụng Gmail hoặc Yahoo với chức năng PHP mail ()
2013-08-02
Cách tạo plugin Nagios với PHP trên Ubuntu 12.10
2013-04-29
Cách tạo plugin Nagios với PHP trên CentOS 6
2013-04-29