cách cài laravel 10: Hướng dẫn chi tiết từng bước từ A-Z
Nội dung bài viết
- Tổng quan về Laravel 10 và Yêu cầu hệ thống
- Chuẩn bị Môi trường Phát triển Laravel
- Cài đặt PHP và Máy chủ Web
- Cài đặt Composer – Trái tim của quá trình cài đặt Laravel
- Cài đặt Laravel 10: Tạo Dự án Mới
- Khởi động Máy chủ Phát triển và Kiểm tra Ứng dụng Laravel
- Điều hướng vào Thư mục Dự án
- Khởi động Máy chủ Phát triển Laravel
- Cấu hình Sau Cài đặt và Các Bước Tiếp theo
- Cấu hình Tệp .env
- Chạy Migration Cơ sở dữ liệu
- Tìm hiểu Cấu trúc Thư mục Laravel
- Các Bước Tiếp theo
- Khắc phục sự cố thường gặp khi cài đặt Laravel
- Kết luận
Laravel, một trong những framework PHP mạnh mẽ và phổ biến nhất, đã trở thành lựa chọn hàng đầu cho các nhà phát triển mong muốn xây dựng các ứng dụng web hiện đại với hiệu suất cao và mã nguồn dễ bảo trì. Việc hiểu rõ cách cài laravel là bước khởi đầu quan trọng để khai thác tối đa tiềm năng của framework này. Bài viết này sẽ cung cấp một hướng dẫn toàn diện, từng bước để cài đặt Laravel 10 bằng Composer, thiết lập môi trường phát triển và chạy ứng dụng đầu tiên của bạn một cách suôn sẻ, đảm bảo bạn có được nền tảng vững chắc để bắt đầu hành trình phát triển web. Framework này được biết đến với cú pháp rõ ràng, tích hợp tốt với kiến trúc MVC, giúp tăng tốc độ phát triển và nâng cao trải nghiệm người dùng.
Tổng quan về Laravel 10 và Yêu cầu hệ thống
Laravel 10 là phiên bản mới nhất của framework PHP nổi tiếng này, mang đến nhiều cải tiến về hiệu suất, cú pháp và tính năng mới, giúp việc phát triển web trở nên dễ dàng và thú vị hơn. Nó tiếp tục kế thừa những ưu điểm của các phiên bản trước, đồng thời bổ sung các tính năng hiện đại để đáp ứng nhu cầu ngày càng cao của ngành công nghiệp. Để cài đặt và vận hành Laravel 10 một cách hiệu quả, việc đảm bảo hệ thống của bạn đáp ứng các yêu cầu tối thiểu là cực kỳ quan trọng.
PHP 8.1 trở lên là phiên bản PHP bắt buộc để Laravel 10 có thể hoạt động. Điều này đảm bảo khả năng tương thích với các tính năng mới nhất của PHP và tối ưu hóa hiệu suất. Các tiện ích mở rộng PHP như Ctype, cURL, DOM, Fileinfo, Mbstring, OpenSSL, PCRE, PDO, Tokenizer, và XML cũng phải được cài đặt và kích hoạt. Đây là những module cần thiết cho các chức năng cơ bản của Laravel, từ xử lý chuỗi đến tương tác với cơ sở dữ liệu.
Composer, công cụ quản lý thư viện cho PHP, đóng vai trò trung tâm trong quá trình cài đặt Laravel và các gói phụ thuộc. Composer giúp bạn dễ dàng cài đặt các package cần thiết, cũng như cập nhật và quản lý chúng trong suốt vòng đời dự án. Laravel cũng yêu cầu một máy chủ web như Apache hoặc Nginx, hoặc bạn có thể sử dụng máy chủ phát triển tích hợp của PHP thông qua Artisan CLI. Việc đáp ứng những yêu cầu này sẽ tạo nền tảng vững chắc cho quá trình phát triển ứng dụng Laravel của bạn.
Chuẩn bị Môi trường Phát triển Laravel
Để cài đặt và chạy Laravel, bạn cần có một môi trường phát triển đầy đủ, bao gồm PHP, Composer và một máy chủ web. Việc chuẩn bị kỹ lưỡng các thành phần này sẽ giúp quá trình cài đặt diễn ra trôi chảy. Có nhiều cách để thiết lập môi trường phát triển, từ cài đặt thủ công từng thành phần đến sử dụng các gói tích hợp tiện lợi.
Cài đặt PHP và Máy chủ Web
Laravel 10 yêu cầu PHP 8.1 trở lên, cùng với một số tiện ích mở rộng. Bạn có thể kiểm tra phiên bản PHP hiện tại bằng cách mở Terminal hoặc Command Prompt và gõ lệnh php -v. Nếu phiên bản PHP của bạn chưa đủ, bạn cần cập nhật hoặc cài đặt mới.
Đối với môi trường phát triển cục bộ, các gói tích hợp như XAMPP, WAMP (Windows), MAMP (macOS) hoặc Laragon (Windows) là những lựa chọn tuyệt vời. Chúng cung cấp sẵn PHP, MySQL và Apache/Nginx, giúp bạn thiết lập một máy chủ cục bộ chỉ với vài cú nhấp chuột. Laragon được nhiều nhà phát triển ưa chuộng nhờ tính năng “pretty URLs” và khả năng cài đặt nhanh chóng các framework phổ biến.
Cài đặt Composer – Trái tim của quá trình cài đặt Laravel
Composer là một công cụ quản lý các gói phụ thuộc trong PHP. Nó cho phép bạn khai báo các thư viện mà dự án của bạn phụ thuộc vào và sẽ quản lý (cài đặt/cập nhật) chúng cho bạn. Việc cài đặt Composer là bước không thể thiếu để triển khai Laravel.
Để cài đặt Composer trên Windows, bạn có thể tải xuống và chạy Composer-Setup.exe từ trang web chính thức của Composer (https://getcomposer.org/). Trình cài đặt sẽ tự động thiết lập Composer và thêm nó vào biến môi trường PATH của hệ thống. Điều này cho phép bạn gọi lệnh composer từ bất kỳ đâu trong Terminal.
Trên macOS và Linux, bạn có thể cài đặt Composer bằng cách chạy các lệnh sau trong Terminal:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ffce03190a0a7c7b2ca89682cc50950d880e6bbd77b5ae5963de8f0c54d351667ee0be754ba1f49567ce') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
Sau khi cài đặt, bạn hãy xác minh Composer đã được cài đặt thành công bằng cách mở Terminal và gõ lệnh composer. Nếu bạn thấy thông tin về Composer, tức là quá trình cài đặt đã hoàn tất.
Xác minh Composer đã được cài đặt thành côngalt: Xác minh Composer đã được cài đặt thành công bằng lệnh composer trên terminal, hiển thị phiên bản và các lệnh có sẵn.
Bước này đảm bảo rằng tất cả các thư viện cần thiết cho Laravel sẽ được tự động tải về và quản lý một cách hiệu quả. Composer là xương sống cho việc quản lý các phụ thuộc trong hệ sinh thái PHP, và Laravel tận dụng nó triệt để để đơn giản hóa quá trình phát triển. Việc cài đặt đúng cách sẽ tiết kiệm rất nhiều thời gian và công sức trong các bước tiếp theo.
Cài đặt Laravel 10: Tạo Dự án Mới
Sau khi môi trường phát triển và Composer đã sẵn sàng, bước tiếp theo là tạo một dự án Laravel mới. Composer cung cấp một lệnh tiện lợi để thực hiện việc này một cách nhanh chóng và dễ dàng. Bạn sẽ sử dụng lệnh create-project của Composer, chỉ định framework Laravel và tên dự án mong muốn.
Mở Terminal hoặc Command Prompt và điều hướng đến thư mục mà bạn muốn lưu trữ dự án của mình. Ví dụ, nếu bạn muốn dự án của mình nằm trong thư mục C:UsersYourUserDocumentsProjects, hãy sử dụng lệnh cd C:UsersYourUserDocumentsProjects. Sau đó, bạn có thể chạy lệnh sau:
composer create-project laravel/laravel blog-app
Trong lệnh này, laravel/laravel là tên package Composer của framework Laravel, và blog-app là tên thư mục mà dự án của bạn sẽ được tạo ra. Bạn có thể thay đổi blog-app thành bất kỳ tên nào bạn muốn cho dự án của mình. Composer sẽ tự động tải xuống tất cả các tệp cần thiết của Laravel và các gói phụ thuộc của nó vào thư mục blog-app.
Quá trình này có thể mất vài phút tùy thuộc vào tốc độ mạng của bạn, vì Composer cần tải xuống hàng trăm megabyte dữ liệu. Sau khi hoàn tất, bạn sẽ thấy thông báo xác nhận rằng Laravel đã được cài đặt thành công và khóa ứng dụng đã được tạo. Thư mục blog-app của bạn giờ đây chứa một ứng dụng Laravel hoàn chỉnh, sẵn sàng để phát triển.
Khởi động Máy chủ Phát triển và Kiểm tra Ứng dụng Laravel
Khi dự án Laravel đã được tạo, bạn cần khởi động máy chủ phát triển cục bộ để xem ứng dụng của mình hoạt động như thế nào. Laravel đi kèm với một công cụ dòng lệnh mạnh mẽ gọi là Artisan, cung cấp nhiều lệnh tiện ích, bao gồm một lệnh để khởi chạy máy chủ web tích hợp của PHP.
Điều hướng vào Thư mục Dự án
Trước tiên, bạn cần điều hướng vào thư mục dự án Laravel mà bạn vừa tạo. Sử dụng lệnh cd trong Terminal hoặc Command Prompt:
cd blog-app
Đảm bảo rằng bạn đang ở trong thư mục gốc của dự án Laravel của mình. Đây là thư mục chứa các tệp như artisan, composer.json và các thư mục app, public, routes, v.v. Việc này là cần thiết để các lệnh Artisan có thể hoạt động chính xác và tác động đến đúng dự án.
Khởi động Máy chủ Phát triển Laravel
Sau khi điều hướng thành công vào thư mục dự án, bạn có thể khởi động máy chủ phát triển của Laravel bằng lệnh Artisan:
php artisan serve
Lệnh này sẽ khởi động một máy chủ web cục bộ trên cổng mặc định 8000. Bạn sẽ thấy một thông báo trong Terminal cho biết máy chủ đã được khởi động và đang lắng nghe tại địa chỉ http://127.0.0.1:8000. Nếu cổng 8000 đã được sử dụng, Laravel sẽ tự động tìm một cổng khác để sử dụng.
Laravel dev server chạy thành công trên localhostalt: Màn hình terminal hiển thị lệnh php artisan serve đã khởi động thành công máy chủ phát triển Laravel 10 tại địa chỉ localhost:8000.
Mở trình duyệt web của bạn và truy cập vào địa chỉ http://127.0.0.1:8000 (hoặc cổng mà Terminal hiển thị). Bạn sẽ thấy trang chào mừng mặc định của Laravel, với logo Laravel và một số liên kết hữu ích. Điều này xác nhận rằng ứng dụng Laravel của bạn đã được cài đặt thành công và đang chạy trên máy chủ cục bộ. Bạn đã hoàn thành các bước cơ bản để cài đặt Laravel 10.
Cấu hình Sau Cài đặt và Các Bước Tiếp theo
Sau khi cài đặt thành công Laravel và kiểm tra ứng dụng chạy, có một số bước cấu hình quan trọng và các bước tiếp theo bạn nên thực hiện để chuẩn bị cho quá trình phát triển. Những bước này giúp tối ưu hóa môi trường làm việc và đảm bảo ứng dụng của bạn hoạt động ổn định.
Cấu hình Tệp .env
Laravel sử dụng tệp .env để quản lý các biến môi trường và cấu hình ứng dụng. Tệp này chứa các thông tin nhạy cảm như khóa ứng dụng (APP_KEY), thông tin kết nối cơ sở dữ liệu, và các thiết lập dịch vụ bên ngoài. Khi bạn tạo một dự án mới, Laravel sẽ tự động tạo một tệp .env dựa trên .env.example.
Bạn cần đảm bảo APP_KEY đã được tạo và không bị trống. Lệnh composer create-project thường tự động thực hiện việc này. Nếu vì lý do nào đó mà APP_KEY bị thiếu, bạn có thể tạo thủ công bằng cách chạy lệnh: php artisan key:generate. Khóa ứng dụng là cần thiết để Laravel có thể mã hóa các phiên, mã thông báo và các dữ liệu nhạy cảm khác.
Ngoài ra, bạn sẽ cần cấu hình thông tin kết nối cơ sở dữ liệu trong tệp .env. Các biến như DB_CONNECTION, DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, và DB_PASSWORD cần được cập nhật để phù hợp với cài đặt cơ sở dữ liệu của bạn (ví dụ: MySQL, PostgreSQL).
APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:YOUR_APP_KEY_HERE
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_username
DB_PASSWORD=your_password
Hãy nhớ thay thế your_database_name, your_username, và your_password bằng thông tin chính xác của bạn.
Chạy Migration Cơ sở dữ liệu
Laravel sử dụng khái niệm migration để quản lý lược đồ cơ sở dữ liệu của bạn. Các tệp migration cho phép bạn định nghĩa các bảng và cột trong cơ sở dữ liệu bằng mã PHP, giúp dễ dàng theo dõi và chia sẻ thay đổi cấu trúc cơ sở dữ liệu giữa các nhà phát triển.
Sau khi đã cấu hình cơ sở dữ liệu trong tệp .env, bạn có thể chạy các migration mặc định của Laravel để tạo các bảng cần thiết cho hệ thống người dùng và quản lý phiên:
php artisan migrate
Lệnh này sẽ thực thi tất cả các tệp migration chưa được chạy trong thư mục database/migrations của dự án, tạo ra các bảng như users, password_reset_tokens, failed_jobs, và personal_access_tokens trong cơ sở dữ liệu của bạn. Đây là một bước quan trọng để chuẩn bị cho việc phát triển các tính năng yêu cầu lưu trữ dữ liệu.
Tìm hiểu Cấu trúc Thư mục Laravel
Để phát triển hiệu quả với Laravel, việc nắm vững cấu trúc thư mục của nó là điều cần thiết. Mỗi thư mục có một mục đích cụ thể và việc hiểu rõ chức năng của chúng sẽ giúp bạn tổ chức mã nguồn một cách hợp lý.
app/: Chứa mã nguồn cốt lõi của ứng dụng, bao gồm các controller, model, provider, v.v.bootstrap/: Chứa các tệp khởi động framework và cấu hình autoloading.config/: Chứa tất cả các tệp cấu hình của ứng dụng.database/: Chứa các migration, seeder và factory cho cơ sở dữ liệu.public/: Thư mục gốc web, chứa tệpindex.php(điểm vào của ứng dụng) và các tài nguyên công khai như CSS, JavaScript, hình ảnh.resources/: Chứa các view (Blade templates), tài sản không biên dịch (LESS, SASS, JavaScript) và các tệp ngôn ngữ.routes/: Định nghĩa tất cả các định tuyến web, API và console của ứng dụng.storage/: Chứa các tệp được tạo bởi Laravel, bao gồm các tệp log, cache, phiên và các tệp do người dùng tải lên.tests/: Chứa các bài kiểm tra tự động cho ứng dụng của bạn.vendor/: Chứa tất cả các thư viện Composer đã cài đặt.
Hiểu rõ cấu trúc này giúp bạn dễ dàng tìm kiếm và tổ chức các phần của ứng dụng, đồng thời tuân thủ các quy ước của Laravel.
Các Bước Tiếp theo
Sau khi hoàn tất các bước cấu hình cơ bản, bạn đã sẵn sàng bắt đầu xây dựng ứng dụng Laravel của mình. Bạn có thể bắt đầu với việc:
- Định tuyến (Routing): Tạo các tuyến đường mới trong
routes/web.phpđể xử lý các yêu cầu HTTP và hiển thị các trang khác nhau. - Controller: Tạo các controller trong
app/Http/Controllersđể quản lý logic nghiệp vụ và tương tác với các model và view. - View (Blade Templates): Tạo các tệp view trong
resources/viewsđể định nghĩa giao diện người dùng của ứng dụng. - Model và Eloquent ORM: Định nghĩa các model trong
app/Modelsđể tương tác với cơ sở dữ liệu thông qua Eloquent ORM mạnh mẽ của Laravel.
Việc làm quen với các khái niệm này sẽ giúp bạn nhanh chóng xây dựng các tính năng cho ứng dụng của mình. Laravel cung cấp tài liệu rất chi tiết và cộng đồng hỗ trợ lớn, giúp bạn dễ dàng tìm kiếm giải pháp cho mọi vấn đề gặp phải.
Khắc phục sự cố thường gặp khi cài đặt Laravel
Trong quá trình cách cài laravel, người dùng có thể gặp phải một số vấn đề phổ biến. Việc hiểu rõ nguyên nhân và cách khắc phục chúng sẽ giúp bạn tiết kiệm thời gian và đảm bảo quá trình cài đặt diễn ra suôn sẻ. Dưới đây là một số sự cố thường gặp và giải pháp của chúng.
Một trong những vấn đề phổ biến nhất là lỗi liên quan đến phiên bản PHP không tương thích. Laravel 10 yêu cầu PHP 8.1 trở lên. Nếu bạn đang sử dụng phiên bản PHP cũ hơn, Composer sẽ hiển thị thông báo lỗi và từ chối cài đặt. Giải pháp là nâng cấp phiên bản PHP trên hệ thống của bạn hoặc thông qua các gói như XAMPP/WAMP/Laragon. Luôn kiểm tra yêu cầu PHP cụ thể của phiên bản Laravel bạn định cài đặt.
Vấn đề khác là Composer không được nhận diện trong Terminal hoặc Command Prompt ('composer' is not recognized as an internal or external command). Điều này thường xảy ra khi Composer chưa được thêm vào biến môi trường PATH của hệ thống. Để khắc phục, bạn cần kiểm tra lại quá trình cài đặt Composer và đảm bảo tùy chọn thêm vào PATH đã được chọn. Đối với Windows, bạn có thể thêm thủ công đường dẫn đến thư mục chứa tệp composer.phar vào biến môi trường PATH. Sau đó, hãy khởi động lại Terminal để các thay đổi có hiệu lực.
Lỗi về quyền truy cập thư mục cũng khá phổ biến, đặc biệt trên các hệ điều hành Linux hoặc macOS. Laravel cần quyền ghi vào các thư mục storage và bootstrap/cache để hoạt động. Nếu gặp lỗi Permission denied, bạn có thể cấp quyền bằng các lệnh sau (chỉ nên thực hiện khi bạn hiểu rõ ý nghĩa của nó và trong môi trường phát triển):
sudo chmod -R 775 storage bootstrap/cache
sudo chown -R $USER:www-data storage bootstrap/cache
Lỗi phụ thuộc (dependency conflicts) trong Composer có thể xảy ra khi có sự không tương thích giữa các gói. Điều này thường được giải quyết bằng cách cập nhật Composer (composer self-update) và sau đó chạy composer update trong thư mục dự án của bạn. Nếu lỗi vẫn tiếp diễn, bạn có thể thử xóa thư mục vendor và tệp composer.lock, sau đó chạy lại composer install.
Cuối cùng, nếu máy chủ phát triển Laravel không khởi động hoặc không thể truy cập được qua trình duyệt, hãy kiểm tra xem cổng 8000 (hoặc cổng mà php artisan serve hiển thị) có đang bị một ứng dụng khác chiếm dụng không. Bạn có thể chỉ định một cổng khác bằng lệnh php artisan serve --port=8080. Ngoài ra, hãy kiểm tra tường lửa của hệ thống để đảm bảo nó không chặn kết nối đến cổng này.
Kết luận
Qua bài viết này, bạn đã được hướng dẫn chi tiết về cách cài laravel 10 bằng Composer, từ việc chuẩn bị môi trường, tạo dự án mới, đến khởi động ứng dụng đầu tiên. Việc nắm vững các bước này là nền tảng vững chắc để bạn bắt đầu hành trình phát triển ứng dụng web với framework PHP mạnh mẽ này. Laravel không chỉ mang lại hiệu suất cao mà còn cung cấp một trải nghiệm phát triển tuyệt vời nhờ cú pháp thanh lịch và hệ sinh thái phong phú. Hãy tiếp tục khám phá tài liệu chính thức và cộng đồng Laravel để nâng cao kỹ năng và xây dựng những ứng dụng ấn tượng.

Vinh Vê Vê là một nhà sáng lập Leon-live.com và là một trong những người tiên phong trong lĩnh vực đánh giá (review) công nghệ với 9 năm kinh nghiệm tại Việt Nam.