Cài đặt, cấu hình

Cài đặt, cấu hình

Cấu hình ứng dụng Yii cơ bản

Trong bài này tôi sẽ hướng dẫn cấu hình các thông số cơ bản của Yii như tên trang web, ngôn ngữ, theme, controller mặc định, cách kết nối tới database và static parameter.

Có nhiều vấn đề khi cấu hình ứng dụng Yii, đây là cách cơ bản nhất; chúng ta chỉ thao tác trên tập tin protected/config/main.php.

Trước khi bắt đầu, tôi sẽ giới thiệu sơ về file index.php được tạo ra trong thư mục gốc của ứng dụng Yii. Đây là file bootstrap, tất cả các yêu cầu từ người dùng đều được xử lý thông qua nó. File này được tạo ra khi bạn dùng lệnh yiic để tạo ứng dụng mới (xem thêm Sử dụng lệnh yiic trong Yii với WAMPServer). Mặc định có 6 dòng lệnh được tạo ra:

// change the following paths if necessary
$yii=dirname(__FILE__).'/../framework/yii.php';
$config=dirname(__FILE__).'/protected/config/main.php';

// remove the following lines when in production mode
defined('YII_DEBUG') or define('YII_DEBUG',true);
// specify how many levels of call stack should be shown in each log message
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);

require_once($yii);
Yii::createWebApplication($config)->run();

 

- Dòng đầu tiên xác định vị trí của framework, đường dẫn này hoàn toàn chính xác nhưng bạn có thể sẽ cần phải thay đỗi nó khi public ứng dụng lên hosting.

- Dòng thứ hai xác định nơi chứa tập tin cấu hình.

- Dòng thứ ba, xác định debug mode khi phát triển ứng dụng. Để vô hiệu hóa bạn chỉ cần remove hoặc comment dòng này.

- Dòng thứ tư, cho phép bạn cấu hình cơ chế ghi file log. Điều này rất hữu ích giúp bạn dẽ dàng xác định lỗi xảy ra để fix, kể cả những lỗi không hiển thị ra trình duyệt.

- Hai dòng cuối cùng là để khởi tạo ứng dụng.

 

Hầu hết các cấu hình đều chứa trong file main.php lưu trong thư mục protected/config. Tập tin cấu hình này sẽ trả về một mảng thông tin cấu hình. Hãy thật cẩn thận khi chỉnh sửa file này, đặc biệt chú ý việc sử dụng dấu ngoặc đơn và dấu phẩy hợp lý. Tốt nhất chú ý đến cách style coding.

Đầu tiên bạn thay đỗi tên ứng dụng được hiển thị mặc định trong tiêu đề trang

'name'=>'My Web Application',

 

Tiếp theo trong phần module bạn nên kích hoạt gii để tiện sử dụng khi cần. Gii là công cụ chạy trên web để tạo ra model, CRUD cho ứng dụng rất nhanh chóng và tiện lợi, hạn chế sai sót khi tự gõ code. Để kích hoạt gii bạn chỉ cần bỏ comment tag /**/  xung quanh nó khoảng dòng 23 -> 30.

'gii'=>array(
	'class'=>'system.gii.GiiModule',
	'password'=>'Enter Your Password Here',
 	// If removed, Gii defaults to localhost only. Edit carefully to taste.
	'ipFilters'=>array('127.0.0.1','::1'),
),

Thay đỗi 'Enter Your Password Here’ thành mật khẩu của bạn để đăng nhập vào gii

 

Di chuyển xuống dưới trong khu vực component.

Bạn hãy gỡ bỏ comment xung quanh khối 'urlManager' để cấu hình URL. Component này được dùng để tạo ra URL thân thiện với các cỗ máy tìm kiếm. Nếu muốn có một URL đẹp hơn bạn sẽ cần thêm một file .htaccess để loại bỏ index.php khỏi URL. Tôi sẽ hướng dẫn cụ thể phần này trong bài viết tiếp theo.

'urlManager'=>array(
    'urlFormat'=>'path',
    'rules'=>array(
        '<controller:\w+>/<id:\d+>'=>'<controller>/view',
        '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
        '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
    ),
),

 

Hầu hết các ứng dụng web đều sử dụng database. Theo mặc định, chuỗi kết nối được tạo ra sử dụng SQLite.

'db'=>array(
	'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
),

 

Nếu bạn muốn sử dụng MySQL hay CSDL khác hãy comment nó lại. Ở đây tôi sẽ hướng dẫn kết nối tới MySQL:

// uncomment the following to use a MySQL database
'db'=>array(
	'connectionString' => 'mysql:host=localhost;dbname=your_table',
	'emulatePrepare' => true,
	'username' => 'root',
	'password' => '12345',
	'charset' => 'utf8',
    'tablePrefix' => 'tbl_',
),

Chuỗi kết nối bao gồm một DSN (Database Source Name) theo một định dạng với thứ tự chính xác. Bắt đầu với từ khóa chỉ ra CSDL được sử dụng, như: mysql (MySQL), pgsql (PostgreSQL), mssql (SQL Server) hoặc ocl (Oracle). Theo sau từ khóa là dấu hai chấm. Chuỗi sau đó tùy thuộc vào CSDL được sử dụng và môi trường máy chủ mà sẽ có các tham số khác được cách nhau bởi dấu chấm phẩy.

 

Log component cho phép sử dụng CwebLogRoute, đây là một công cụ gỡ lỗi tuyệt vời. Mặc định nó sé ghi file log vào protected/runtime/application.log.

 

Cuối cùng ở cuối file là các tham số mặc định. Bạn có thể thêm vào các tham số khác nếu cần và gọi chúng thông qua lệnh Yii::app()->params['paramName']

 

Bạn có thể thấu hình thêm một số thông tin khác như ngôn ngữ, theme, controller mặc định như sau:

'theme'=>'default',
'language'=>'vi',
'defaultController'=>'site/login',

 

Đây chỉ là những thông số cấu hình cơ bản.

Bài đăng khác

HỖ TRỢ TRỰC TUYẾN

Mr. Lĩnh

0939.898.458

linhnp@panda.com.vn

Mr. Lai

0939.38.77.39

lainp@panda.com.vn

Processing...