Laravel 8 không đọc tệp env
Tất cả các tệp cấu hình cho khung Laravel được lưu trữ trong thư mục 8. Mỗi tùy chọn đều được ghi lại, vì vậy, vui lòng xem qua các tệp và làm quen với các tùy chọn có sẵn cho bạnCác tệp cấu hình này cho phép bạn định cấu hình những thứ như thông tin kết nối cơ sở dữ liệu, thông tin máy chủ thư của bạn, cũng như nhiều giá trị cấu hình cốt lõi khác, chẳng hạn như múi giờ ứng dụng và khóa mã hóa Tổng quan về ứng dụngĐang vội? Nếu bạn chỉ quan tâm đến một phần cụ thể của kết quả tổng quan về ứng dụng, bạn có thể lọc phần đó bằng tùy chọn 0
Cấu hình môi trườngThường hữu ích khi có các giá trị cấu hình khác nhau dựa trên môi trường mà ứng dụng đang chạy. Ví dụ: bạn có thể muốn sử dụng cục bộ trình điều khiển bộ đệm khác với trình điều khiển bộ đệm mà bạn sử dụng trên máy chủ sản xuất của mình Để thực hiện điều này một cách chắc chắn, Laravel sử dụng thư viện DotEnv PHP. Trong bản cài đặt Laravel mới, thư mục gốc của ứng dụng của bạn sẽ chứa tệp 1 xác định nhiều biến môi trường phổ biến. Trong quá trình cài đặt Laravel, tệp này sẽ tự động được sao chép vào 2Tệp 2 mặc định của Laravel chứa một số giá trị cấu hình phổ biến có thể khác nhau dựa trên việc ứng dụng của bạn đang chạy cục bộ hay trên máy chủ web sản xuất. Các giá trị này sau đó được lấy từ các tệp cấu hình Laravel khác nhau trong thư mục 8 bằng hàm 5 của LaravelNếu bạn đang phát triển với một nhóm, bạn có thể muốn tiếp tục bao gồm tệp 1 cùng với đơn đăng ký của mình. Bằng cách đặt các giá trị giữ chỗ trong tệp cấu hình ví dụ, các nhà phát triển khác trong nhóm của bạn có thể thấy rõ các biến môi trường nào cần thiết để chạy ứng dụng của bạn
Bảo mật tệp môi trườngTệp 2 của bạn không nên được cam kết với quyền kiểm soát nguồn của ứng dụng, vì mỗi nhà phát triển/máy chủ sử dụng ứng dụng của bạn có thể yêu cầu cấu hình môi trường khác. Hơn nữa, đây sẽ là một rủi ro bảo mật trong trường hợp kẻ xâm nhập có quyền truy cập vào kho lưu trữ kiểm soát nguồn của bạn, vì mọi thông tin đăng nhập nhạy cảm sẽ bị lộTuy nhiên, có thể mã hóa tệp môi trường của bạn bằng mã hóa môi trường tích hợp của Laravel. Các tệp môi trường được mã hóa có thể được đặt trong kiểm soát nguồn một cách an toàn Tệp môi trường bổ sungTrước khi tải các biến môi trường của ứng dụng của bạn, Laravel xác định xem biến môi trường 9 đã được cung cấp từ bên ngoài chưa hay đối số CLI của 30 đã được chỉ định chưa. Nếu vậy, Laravel sẽ cố tải một tệp 31 nếu nó tồn tại. Nếu nó không tồn tại, tệp 2 mặc định sẽ được tảiCác loại biến môi trườngTất cả các biến trong tệp 2 của bạn thường được phân tích cú pháp dưới dạng chuỗi, do đó, một số giá trị dành riêng đã được tạo để cho phép bạn trả về phạm vi loại rộng hơn từ hàm 34 2 Giá trị 34 Giá trịtrue(bool) true(true)(bool) truefalse(bool) false(false)(bool) falseempty(string) ''(empty)(string) ''null(null) null(null)(null) nullNếu bạn cần xác định một biến môi trường có giá trị chứa khoảng trắng, bạn có thể làm như vậy bằng cách đặt giá trị trong dấu ngoặc kép
Truy xuất cấu hình môi trườngTất cả các biến được liệt kê trong tệp 2 sẽ được tải vào siêu toàn cục PHP 38 khi ứng dụng của bạn nhận được yêu cầu. Tuy nhiên, bạn có thể sử dụng hàm 5 để truy xuất các giá trị từ các biến này trong tệp cấu hình của mình. Trên thực tế, nếu bạn xem lại các tệp cấu hình của Laravel, bạn sẽ nhận thấy nhiều tùy chọn đã sử dụng chức năng này
Giá trị thứ hai được truyền cho hàm 5 là "giá trị mặc định". Giá trị này sẽ được trả về nếu không có biến môi trường nào tồn tại cho khóa đã choXác định môi trường hiện tạiMôi trường ứng dụng hiện tại được xác định thông qua biến 9 từ tệp 2 của bạn. Bạn có thể truy cập giá trị này thông qua phương pháp 83 trên mặt tiền 84 3Bạn cũng có thể truyền đối số cho phương thức 83 để xác định xem môi trường có khớp với một giá trị nhất định hay không. Phương thức sẽ trả về 86 nếu môi trường khớp với bất kỳ giá trị nào đã cho 8
Mã hóa tập tin môi trườngCác tệp môi trường không được mã hóa sẽ không bao giờ được lưu trữ trong kiểm soát nguồn. Tuy nhiên, Laravel cho phép bạn mã hóa các tệp môi trường của mình để chúng có thể được thêm vào kiểm soát nguồn một cách an toàn với phần còn lại của ứng dụng của bạn mã hóaĐể mã hóa tệp môi trường, bạn có thể sử dụng lệnh 88Chạy lệnh 88 sẽ mã hóa tệp 2 của bạn và đặt nội dung được mã hóa vào tệp 81. Khóa giải mã được trình bày trong đầu ra của lệnh và phải được lưu trữ trong trình quản lý mật khẩu an toàn. Nếu bạn muốn cung cấp khóa mã hóa của riêng mình, bạn có thể sử dụng tùy chọn 82 khi gọi lệnh 8
Nếu ứng dụng của bạn có nhiều tệp môi trường, chẳng hạn như 2 và 86, thì bạn có thể chỉ định tệp môi trường sẽ được mã hóa bằng cách cung cấp tên môi trường thông qua tùy chọn 30 6giải mãĐể giải mã tệp môi trường, bạn có thể sử dụng lệnh 88. Lệnh này yêu cầu khóa giải mã, mà Laravel sẽ lấy từ biến môi trường 89Hoặc, khóa có thể được cung cấp trực tiếp cho lệnh thông qua tùy chọn 82 0Khi lệnh 88 được gọi, Laravel sẽ giải mã nội dung của tệp 81 và đặt nội dung đã giải mã vào tệp 2Tùy chọn 84 có thể được cung cấp cho lệnh 88 để sử dụng mật mã mã hóa tùy chỉnh 6Nếu ứng dụng của bạn có nhiều tệp môi trường, chẳng hạn như 2 và 86, thì bạn có thể chỉ định tệp môi trường sẽ được giải mã bằng cách cung cấp tên môi trường thông qua tùy chọn 30 0Để ghi đè lên tệp môi trường hiện có, bạn có thể cung cấp tùy chọn 69 cho lệnh 88 0Truy cập giá trị cấu hìnhBạn có thể dễ dàng truy cập các giá trị cấu hình của mình bằng hàm toàn cầu 8 từ bất kỳ đâu trong ứng dụng của bạn. Các giá trị cấu hình có thể được truy cập bằng cú pháp "dấu chấm", bao gồm tên của tệp và tùy chọn bạn muốn truy cập. Giá trị mặc định cũng có thể được chỉ định và sẽ được trả về nếu tùy chọn cấu hình không tồn tại 1Để đặt giá trị cấu hình trong thời gian chạy, hãy chuyển một mảng tới hàm 8 2Bộ nhớ đệm cấu hìnhĐể tăng tốc độ cho ứng dụng của bạn, bạn nên lưu trữ tất cả các tệp cấu hình của mình vào một tệp duy nhất bằng cách sử dụng lệnh Artisan 03. Điều này sẽ kết hợp tất cả các tùy chọn cấu hình cho ứng dụng của bạn thành một tệp duy nhất mà khung có thể tải nhanh chóngThông thường, bạn nên chạy lệnh 04 như một phần của quy trình triển khai sản xuất của mình. Không nên chạy lệnh trong quá trình phát triển cục bộ vì các tùy chọn cấu hình sẽ thường xuyên cần được thay đổi trong quá trình phát triển ứng dụng của bạn
Chế độ kiểm tra sửa lỗiTùy chọn 09 trong tệp cấu hình 60 của bạn xác định lượng thông tin về lỗi thực sự được hiển thị cho người dùng. Theo mặc định, tùy chọn này được đặt để tôn trọng giá trị của biến môi trường 61, được lưu trữ trong tệp 2 của bạnĐể phát triển cục bộ, bạn nên đặt biến môi trường 61 thành 86. Trong môi trường sản xuất của bạn, giá trị này phải luôn là 65. Nếu biến được đặt thành 86 trong quá trình sản xuất, bạn có nguy cơ để lộ các giá trị cấu hình nhạy cảm cho người dùng cuối của ứng dụngChế độ bảo trìKhi ứng dụng của bạn ở chế độ bảo trì, chế độ xem tùy chỉnh sẽ được hiển thị cho tất cả các yêu cầu trong ứng dụng của bạn. Điều này giúp dễ dàng "vô hiệu hóa" ứng dụng của bạn khi nó đang cập nhật hoặc khi bạn đang bảo trì. Kiểm tra chế độ bảo trì được bao gồm trong ngăn xếp phần mềm trung gian mặc định cho ứng dụng của bạn. Nếu ứng dụng đang ở chế độ bảo trì, một phiên bản 67 sẽ được đưa ra với mã trạng thái là 503Để bật chế độ bảo trì, hãy thực hiện lệnh 68 ArtisanNếu bạn muốn tiêu đề HTTP 69 được gửi cùng với tất cả các phản hồi ở chế độ bảo trì, bạn có thể cung cấp tùy chọn 00 khi gọi lệnh 68. Tiêu đề 69 sẽ hướng dẫn trình duyệt tự động làm mới trang sau số giây được chỉ định 3Bạn cũng có thể cung cấp tùy chọn 03 cho lệnh 68, tùy chọn này sẽ được đặt làm giá trị của tiêu đề HTTP 05, mặc dù các trình duyệt thường bỏ qua tiêu đề nàyBỏ qua chế độ bảo trìĐể cho phép bỏ qua chế độ bảo trì bằng mã thông báo bí mật, bạn có thể sử dụng tùy chọn 06 để chỉ định mã thông báo bỏ qua chế độ bảo trì 4Sau khi đặt ứng dụng ở chế độ bảo trì, bạn có thể điều hướng đến URL ứng dụng khớp với mã thông báo này và Laravel sẽ cấp cookie bỏ qua chế độ bảo trì cho trình duyệt của bạn 5Khi truy cập vào route ẩn này, bạn sẽ được chuyển đến route 07 của ứng dụng. Khi cookie đã được cấp cho trình duyệt của bạn, bạn sẽ có thể duyệt ứng dụng bình thường như thể nó không ở chế độ bảo trì
Kết xuất trước Chế độ xem chế độ bảo trìNếu bạn sử dụng lệnh 09 trong quá trình triển khai, đôi khi người dùng của bạn vẫn có thể gặp lỗi nếu họ truy cập ứng dụng trong khi các thành phần phụ thuộc Trình soạn thảo hoặc các thành phần cơ sở hạ tầng khác của bạn đang cập nhật. Điều này xảy ra do một phần quan trọng của khung Laravel phải khởi động để xác định ứng dụng của bạn đang ở chế độ bảo trì và hiển thị chế độ xem chế độ bảo trì bằng cách sử dụng công cụ tạo khuôn mẫuVì lý do này, Laravel cho phép bạn kết xuất trước chế độ xem chế độ bảo trì sẽ được trả về ngay khi bắt đầu chu kỳ yêu cầu. Chế độ xem này được hiển thị trước khi bất kỳ phần phụ thuộc nào của ứng dụng của bạn được tải. Bạn có thể kết xuất trước một mẫu bạn chọn bằng cách sử dụng tùy chọn 01 của lệnh 68 6Chuyển hướng yêu cầu chế độ bảo trìTrong khi ở chế độ bảo trì, Laravel sẽ hiển thị chế độ xem chế độ bảo trì cho tất cả các URL ứng dụng mà người dùng cố gắng truy cập. Nếu muốn, bạn có thể hướng dẫn Laravel chuyển hướng tất cả các yêu cầu đến một URL cụ thể. Điều này có thể được thực hiện bằng cách sử dụng tùy chọn 02. Ví dụ: bạn có thể muốn chuyển hướng tất cả các yêu cầu đến URI 07 7Tắt chế độ bảo trìĐể tắt chế độ bảo trì, hãy sử dụng lệnh 04
Chế độ bảo trì & hàng đợiTrong khi ứng dụng của bạn ở chế độ bảo trì, sẽ không có công việc xếp hàng nào được xử lý. Các công việc sẽ tiếp tục được xử lý như bình thường sau khi ứng dụng thoát khỏi chế độ bảo trì Các lựa chọn thay thế cho chế độ bảo trìVì chế độ bảo trì yêu cầu ứng dụng của bạn có vài giây thời gian ngừng hoạt động, hãy xem xét các lựa chọn thay thế như Laravel Vapor và Envoyer để hoàn thành việc triển khai không có thời gian ngừng hoạt động với Laravel Làm cách nào để đọc tệp env trong Laravel?Chúng ta có thể truy cập biến cấu hình bằng trình trợ giúp env(). . cú pháp. env('VARIABLE_NAME'); Thí dụ. env('APP_URL'); tập tin lưỡi. @if (env('APP_ENV') == 'cục bộ'). Tập tin điều khiển. đọc thêm. Cách nhận truy vấn được thực hiện lần cuối trong Laravel? Làm cách nào để nhận giá trị env trong Laravel 8?env('VARIABLE_NAME'); . chỉ cần đặt cùng một dòng trong của bạn. . Google_API_Key=XXXXX. Truy cập đặt biến trong. . env('Google_API_Key'); @if(env('APP_ENV') == 'local') Khớp @endif. Bộ điều khiển if(env('APP_ENV') == 'local') { echo 'Match'; Tệp env ở đâu trong Laravel 8?Trong bản cài đặt Laravel mới, thư mục gốc của ứng dụng của bạn sẽ chứa một. env. tệp ví dụ xác định nhiều biến môi trường phổ biến.
Làm cách nào để đặt giá trị env trong Laravel?để tìm nạp các biến môi trường bằng env(). Phương thức env() giúp bạn tìm nạp các giá trị được đặt cho các biến môi trường trong. tập tin env. Bạn có thể chuyển tên biến cho phương thức env() và nó sẽ trả về cho bạn giá trị được đặt trong. tệp env . |