Cách cài đặt Laravel PHP Framework trên Alma Linux 9

theanh

Administrator
Nhân viên
Laravel là một nền tảng ứng dụng web dựa trên PHP được sử dụng để xây dựng các ứng dụng web doanh nghiệp và toàn diện mạnh mẽ. Nó tuân theo kiến trúc model-view-controller (MVC) và dựa trên Symfony. Laravel hỗ trợ nhiều cơ sở dữ liệu, bao gồm MySQL, PostgreSQL, SQLite và SQL Server. Laravel cũng cung cấp nền tảng để xác thực an toàn.

Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Laravel trên máy chủ Alma Linux 9. Chúng tôi sẽ hướng dẫn bạn cài đặt Laravel với LAMP Stack (Linux, Apache/Httpd, MariaDB và PHP) và Composer.

Điều kiện tiên quyết​

Trước khi tiếp tục, hãy đảm bảo bạn có những điều sau:
  • Máy chủ Alma Linux 9.
  • Người dùng không phải root có quyền quản trị viên.
  • Tên miền cục bộ.
  • SELinux có chế độ cho phép.

Cài đặt LAMP Stack và Composer​

Laravel là một trong những khuôn khổ web PHP phổ biến nhất để xây dựng các ứng dụng web. Để cài đặt Laravel, bạn cần cài đặt các phần phụ thuộc, bao gồm LAMP Stack (Apache/Httpd, MariaDb và PHP) và Composer. Hiện tại, Laravel yêu cầu PHP 8.3. Bạn phải cài đặt PHP 8.3 thông qua kho lưu trữ của bên thứ ba.

Trước tiên, hãy thêm kho lưu trữ của bên thứ ba EPEL và Remi vào máy chủ Alma Linux của bạn bằng lệnh bên dưới. Kho lưu trữ EPEL sẽ được sử dụng để cài đặt các gói như Composer, trong khi kho lưu trữ Remi cung cấp nhiều phiên bản PHP cho Laravel.
Mã:
sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22304%22%3E%3C/svg%3E


Bây giờ hãy bật kho lưu trữ PHP 8.3 thông qua Remi bằng lệnh bên dưới.
Mã:
sudo dnf reset php -y
sudo dnf module enable php:remi-8.3 -y
Tiếp theo, cài đặt LAMP Stack (Apache/Httpd, MariaDB và PHP) và các gói Composer bằng lệnh sau. Nhập để xác nhận cài đặt.
Mã:
sudo dnf install httpd mariadb-server composer php php-curl php-bcmath php-json php-mbstring php-xml php-tokenizer php-zip

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22380%22%3E%3C/svg%3E


Sau khi cài đặt hoàn tất, hãy khởi động và kích hoạt dịch vụ httpd bằng lệnh bên dưới.
Mã:
sudo systemctl start httpd
sudo systemctl enable httpd
Sau đó, khởi động và kích hoạt máy chủ MariaDB bằng lệnh sau.
Mã:
sudo systemctl start mariadb
sudo systemctl enable mariadb
Bây giờ, hãy xác minh phiên bản PHP và Composer bằng lệnh bên dưới. Bạn sẽ thấy PHP 8.3 và Composer 2.7.1 đã được cài đặt.
Mã:
php -v
sudo -u apache composer -v

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22692%22%20height=%22372%22%3E%3C/svg%3E


Cuối cùng, hãy chạy lệnh bên dưới để xác minh các mô-đun PHP của bạn. Đảm bảo fileinfo, mbstring và openssl được bật.
Mã:
php -m

Cấu hình MariaDB​

Với PHP đã cấu hình, bạn sẽ bảo mật máy chủ MariaDB và tạo cơ sở dữ liệu và người dùng mới cho Laravel. Máy chủ MariaDB cung cấp tiện ích MariaDB-secure-installation để bảo mật máy chủ MariaDB và máy khách MariaDB để kết nối với máy chủ MariaDB qua dòng lệnh.

Để bảo mật máy chủ MariaDB, hãy chạy lệnh bên dưới và bạn sẽ được yêu cầu cung cấp một số cấu hình máy chủ MariaDB. Nhập Y hoặc N để đồng ý hoặc không đồng ý áp dụng các thay đổi MariaDB mới.
Mã:
sudo mariadb-secure-installation
Dưới đây là một số cấu hình máy chủ MariaDB mà bạn sẽ được yêu cầu:
  • Chuyển sang xác thực unix_socket?. Nhập n và nhấn ENTER. Người dùng gốc MariaDB mặc định đã được bảo vệ. tùy chọn, bạn cũng có thể bật nó bằng cách nhập y cho yes.
  • Thay đổi mật khẩu gốc?. Nhập y để xác nhận và thiết lập mật khẩu gốc MariaDB mới của bạn.
  • Xóa người dùng ẩn danh?. Nhập y để xác nhận.
  • Không cho phép đăng nhập gốc từ xa? Nhập y để xác nhận. Chỉ cho phép kết nối cục bộ nếu bạn đang sử dụng người dùng root MariaDB.
  • Xóa cơ sở dữ liệu thử nghiệm và truy cập vào cơ sở dữ liệu đó?. Nhập y để xác nhận và xóa cơ sở dữ liệu mặc định 'test'.
  • Cuối cùng, nhập y một lần nữa để tải lại tất cả các đặc quyền bảng trên máy chủ MariaDB của bạn và áp dụng các thay đổi mới.
Sau khi MariaDB được bảo mật, bạn sẽ tạo một cơ sở dữ liệu và người dùng mới cho Laravel thông qua máy khách mariadb.

Đăng nhập vào máy chủ MariaDB bằng lệnh máy khách mariadb bên dưới. Nhập mật khẩu root MariaDB của bạn khi được nhắc.
Mã:
sudo mariadb -u root -p
Bây giờ hãy chạy các truy vấn sau để tạo cơ sở dữ liệu và người dùng mới cho Laravel. Trong ví dụ này, bạn sẽ tạo cơ sở dữ liệu mới laravelapp, người dùng laravel, với mật khẩu p4ssw0rd. Điều chỉnh cơ sở dữ liệu chi tiết và người dùng bên dưới bằng thông tin của bạn.
Mã:
CREATE DATABASE laravelapp;
CREATE USER laravel@localhost IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost;
FLUSH PRIVILEGES;

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22257%22%3E%3C/svg%3E


Tiếp theo, chạy truy vấn bên dưới để xác minh quyền cho người dùng laravel. Đảm bảo rằng người dùng laravel có thể truy cập cơ sở dữ liệu laravelapp.
Mã:
SHOW PRIVILEGES FOR laravel@localhost;
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22231%22%3E%3C/svg%3E

Tạo dự án Laravel​

Bây giờ bạn đã cấu hình cả PHP và MariaDB, hãy tải xuống và cài đặt Laravel vào hệ thống của bạn. Bạn sẽ tạo và thiết lập thư mục dự án, sau đó tải xuống và cài đặt dự án Laravel thông qua Composer.

Tạo các thư mục mới cho dự án Laravel /var/www/laravelapp và các thư mục bổ sung .cache và .config để lưu trữ bộ đệm và cấu hình Composer. Sau đó, thay đổi quyền sở hữu các thư mục đó thành người dùng apache.
Mã:
mkdir -p /var/www/laravelapp /usr/share/httpd/.composer/{.cache,.config}
sudo chown -R apache:apache /var/www/laravelapp /usr/share/httpd/.composer
Truy cập thư mục /var/www/laravelapp và chạy lệnh composer bên dưới để tải xuống và cài đặt Laravel.
Mã:
cd /var/www/laravelapp/
sudo -u apache composer create-project laravel/laravel .
Quá trình tải xuống sẽ như thế này:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22527%22%3E%3C/svg%3E


Sau khi Laravel được tải xuống, hãy mở tệp .env bằng lệnh trình chỉnh sửa nano sau.
Mã:
nano .env
Thay đổi APP_URL bằng tên miền cục bộ của bạn, sau đó thay đổi thông tin chi tiết về cơ sở dữ liệu bằng cơ sở dữ liệu MariaDB của bạn thông tin.
Mã:
APP_URL=http://dev.hwdomain.local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelapp
DB_USERNAME=laravel
DB_PASSWORD=password
Khi hoàn tất, hãy lưu tệp và thoát.

Bây giờ hãy chạy lệnh bên dưới để di chuyển cơ sở dữ liệu và điền dữ liệu mẫu mới vào bảng của bạn.
Mã:
sudo -u apache php artisan migrate
sudo -u apache php artisan db:seed

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22204%22%3E%3C/svg%3E

Thiết lập Httpd Virtual Host​

Sau khi cài đặt Laravel, bạn sẽ tạo cấu hình Httpd virtual host mới mà Laravel sẽ sử dụng. Đối với cấu hình này, hãy đảm bảo có tên miền cục bộ hoặc bất kỳ/tên miền ngẫu nhiên nào bạn muốn. Bạn có thể cấu hình miền này sau.

Tạo cấu hình máy chủ ảo httpd mới /etc/httpd/conf.d/laravel.conf bằng lệnh nano editor sau.
Mã:
sudo nano /etc/httpd/conf.d/laravel.conf
Chèn cấu hình sau và đảm bảo thay đổi tùy chọn ServerName bằng tên miền Laravel của bạn.
Mã:
 ServerAdmin [emailprotected]
 ServerName dev.hwdomain.local
 DocumentRoot /var/www/laravelapp/public

 
 Options FollowSymLinks
 AllowOverride None
 
 
 AllowOverride All
 

 ErrorLog /var/log/httpd/laravel-error.log
 CustomLog /var/log/httpd/laravel-access.log combined
Lưu tệp và thoát editor.

Bây giờ hãy chạy lệnh bên dưới để xác minh cấu hình httpd của bạn. Nếu bạn có cú pháp httpd đúng, bạn sẽ nhận được đầu ra Syntax OK.
Mã:
sudo apachectl configtest
Cuối cùng, hãy khởi động lại dịch vụ httpd để áp dụng cấu hình máy chủ ảo mới của bạn cho Laravel.
Mã:
sudo systemctl restart httpd

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22640%22%20height=%22202%22%3E%3C/svg%3E

Thiết lập Firewalld​

trước khi truy cập cài đặt Laravel, bạn phải mở cả cổng HTTP và HTTPS trên hệ thống của mình, có thể thực hiện thông qua Firewalld.

Mở cả lưu lượng HTTP và HTTPS đến máy chủ Alma Linux của bạn bằng lệnh bên dưới.
Mã:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Bây giờ hãy tải lại firewalld để áp dụng các thay đổi.
Mã:
sudo firewall-cmd --reload
Cuối cùng, hãy xác minh các quy tắc danh sách tường lửa bằng lệnh sau. Bạn sẽ thấy cả dịch vụ HTTP và HTTPS được thêm vào firewalld.
Mã:
sudo firewall-cmd --list-all

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22278%22%3E%3C/svg%3E

Truy cập Laravel từ máy tính cục bộ​

Để thiết lập tên miền cục bộ cho cài đặt Laravel của bạn, hãy sử dụng sau đây:
  • Đối với người dùng Windows, hãy sửa đổi tệp C:\Windows\System32\drivers\etc\hosts với tư cách quản trị viên.
  • Đối với người dùng Linux và Mac, hãy mở tệp /etc/hosts với quyền root.
Chèn cấu hình bên dưới và đảm bảo thay đổi địa chỉ IP và tên miền bằng thông tin của bạn.
Mã:
192.168.5.60 dev.hwdomain.local
Lưu và thoát tệp.

Bây giờ hãy mở trình duyệt web của bạn và truy cập cài đặt Laravel của bạn http://dev.hwdomain.local/. Nếu cài đặt thành công, bạn sẽ nhận được trang chỉ mục Laravel sau.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22471%22%3E%3C/svg%3E

Kết luận​

Xin chúc mừng! Bạn đã hoàn tất cài đặt Laravel trên Alma Linux 9 với LAMP Stack (Linux, Apache/Httpd, MariaDB và PHP) và Composer. Bạn cũng đã cấu hình firewalld để mở cả cổng HTTP và HTTPS, sau đó cũng cấu hình tên miền cục bộ cho quá trình phát triển Laravel của mình thông qua tệp /etc/hosts hoặc tệp C:\Windows\System32\drivers\etc\hosts.
 
Back
Bên trên