Home Tutorial Laravel Laravel – Bài 3: Cấu hình

Laravel – Bài 3: Cấu hình

10 min read
0
249

Trong chương trước, chúng ta đã thấy rằng các tệp cấu hình cơ bản của Laravel được bao gồm trong thư mục config . Trong chương này, chúng ta hãy thảo luận về các danh mục có trong cấu hình.

Cấu hình môi trường

Các biến môi trường là những biến cung cấp danh sách các dịch vụ web cho ứng dụng web của bạn. Tất cả các biến môi trường được khai báo trong tệp .env bao gồm các tham số cần thiết để khởi tạo cấu hình.

Theo mặc định, tệp .env bao gồm các tham số sau:

APP_ENV = local
APP_DEBUG = true
APP_KEY = base64:ZPt2wmKE/X4eEhrzJU6XX4R93rCwYG8E2f8QUA7kGK8 =
APP_URL = http://localhost
DB_CONNECTION = mysql
DB_HOST = 127.0.0.1
DB_PORT = 3306
DB_DATABASE = homestead
DB_USERNAME = homestead
DB_PASSWORD = secret
CACHE_DRIVER = file
SESSION_DRIVER = file
QUEUE_DRIVER = sync
REDIS_HOST = 127.0.0.1
REDIS_PASSWORD = null
REDIS_PORT = 6379
MAIL_DRIVER = smtp
MAIL_HOST = mailtrap.ioMAIL_PORT = 2525
MAIL_USERNAME = null
MAIL_PASSWORD = null
MAIL_ENCRYPTION = null

Điểm quan trọng

Trong khi làm việc với các tệp cấu hình cơ bản của Laravel, cần lưu ý các điểm sau –

  • Tệp .env không được cam kết kiểm soát nguồn ứng dụng vì mỗi nhà phát triển hoặc người dùng có một số cấu hình môi trường được xác định trước cho ứng dụng web.
  • Đối với các tùy chọn sao lưu, nhóm phát triển nên bao gồm tệp .env.example , tệp này sẽ chứa cấu hình mặc định.

Truy xuất các biến môi trường

Tất cả các biến môi trường được khai báo trong tệp .env đều có thể được truy cập bằng các hàm env-helper sẽ gọi tham số tương ứng. Các biến này cũng được liệt kê vào biến toàn cục $_ENV bất cứ khi nào ứng dụng nhận được yêu cầu từ phía người dùng. Bạn có thể truy cập biến môi trường như hình bên dưới –

'env' => env('APP_ENV', 'production'),

Các hàm env-helper được gọi trong tệp app.php có trong thư mục cấu hình . Ví dụ đã cho ở trên đang gọi tham số cục bộ cơ bản.

Truy cập giá trị cấu hình

Bạn có thể dễ dàng truy cập các giá trị cấu hình ở bất kỳ đâu trong ứng dụng bằng chức năng trợ giúp cấu hình chung. Trong trường hợp nếu các giá trị cấu hình không được khởi tạo, các giá trị mặc định sẽ được trả về.

Ví dụ: để đặt múi giờ mặc định, đoạn mã sau được sử dụng –

config(['app.timezone' => 'Asia/Kolkata']);

Caching of Configuration

Để tăng hiệu suất và tăng cường ứng dụng web, điều quan trọng là phải lưu vào bộ nhớ cache tất cả các giá trị cấu hình. Lệnh để lưu vào bộ đệm các giá trị cấu hình là –

config:cache

Ảnh chụp màn hình sau đây cho thấy bộ nhớ đệm theo cách tiếp cận có hệ thống –

Bộ nhớ đệm cấu hình

Maintenance Mode

Đôi khi, bạn có thể cần cập nhật một số giá trị cấu hình hoặc thực hiện bảo trì trên trang web của mình và cần dừng trao web lại. Trong những trường hợp như vậy, giữ nó ở Maintenance Mode sẽ giúp bạn dễ dàng hơn. Các ứng dụng web như vậy được giữ ở Maintenance Mode, đưa ra một ngoại lệ có tên là MaintenanceModeException  với mã trạng thái là 503.

Bạn có thể kích hoạt chế độ bảo trì trên ứng dụng web Laravel của mình bằng lệnh sau –

php artisan down

PHP nghệ nhân xuống

Ảnh chụp màn hình sau đây cho thấy giao diện của ứng dụng web khi nó ngừng hoạt động –

Khi bạn hoàn thành công việc cập nhật và bảo trì khác, bạn có thể tắt chế độ bảo trì trên ứng dụng web của mình bằng lệnh sau –

php artisan up

Bắt đầu Bảo trì Lên

Bây giờ, bạn có thể thấy rằng trang web hiển thị đầu ra với chức năng phù hợp và mô tả rằng chế độ bảo trì hiện đã bị xóa như hình bên dưới –

Load More Related Articles
Load More By quangvu
  • Laravel – Bài 11: Error Handling

    Hầu hết các ứng dụng web đều có cơ chế cụ thể để xử lý lỗi. Bằng cách sử dụng chúng, họ th…
  • Laravel – Bài 16 Authentication (xác thực)

    Xác thực là quá trình xác định thông tin đăng nhập của người dùng. Trong các ứng dụng web,…
  • Laravel – Bài 15: Session

    Session được sử dụng để lưu trữ thông tin về người dùng trong các yêu cầu. Laravel cung cấ…
Load More In Laravel

Check Also

Tự làm web chatGPT đơn giản cho phép dùng nhiều OpenAI key

Trong thời đại công nghệ phát triển như hiện nay, chatbot đang dần trở thành một giải pháp…