vi

Laravel VPS Hosting: Triển Khai Ứng Dụng PHP

Laravel là PHP framework phổ biến nhất thế giới, được sử dụng cho hàng triệu ứng dụng web từ startup đến enterprise. Triển khai Laravel trên VPS offshore của AnubizHost mang lại hiệu suất cao hơn shared hosting, kiểm soát hoàn toàn cấu hình PHP và khả năng chạy queue workers, scheduled tasks mà không bị giới hạn bởi cPanel hay Plesk.

Need this done for your project?

We implement, you ship. Async, documented, done in days.

Start a Brief

Cài Đặt PHP và Extensions cho Laravel

Cài đặt PHP và tất cả extensions cần thiết cho Laravel:

apt install -y software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install -y php8.3 php8.3-fpm php8.3-mbstring php8.3-xml     php8.3-bcmath php8.3-curl php8.3-zip php8.3-gd     php8.3-mysql php8.3-pgsql php8.3-redis unzip

php --version

Cài đặt Composer:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
composer --version

Deploy Laravel Application

Clone project và cài đặt dependencies:

cd /var/www
git clone https://github.com/youruser/laravel-app.git myapp
cd myapp
composer install --no-dev --optimize-autoloader
cp .env.example .env
php artisan key:generate

Cấu hình .env với database và các settings:

APP_ENV=production
APP_DEBUG=false
APP_URL=https://yourdomain.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_DATABASE=myapp_db
DB_USERNAME=myapp_user
DB_PASSWORD=strong_password_here

Chạy migrations và optimize:

php artisan migrate --force
php artisan config:cache
php artisan route:cache
php artisan view:cache

Set permissions:

chown -R www-data:www-data /var/www/myapp
chmod -R 755 /var/www/myapp/storage
chmod -R 755 /var/www/myapp/bootstrap/cache

Cấu Hình Nginx cho Laravel

Laravel yêu cầu cấu hình Nginx đặc biệt để xử lý routing:

nano /etc/nginx/sites-available/myapp
server {
    listen 80;
    server_name yourdomain.com;
    root /var/www/myapp/public;
    index index.php;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /.(?!well-known).* {
        deny all;
    }
}
ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

Queue Worker và Scheduled Tasks

Laravel queue workers cần chạy liên tục như một service:

nano /etc/systemd/system/laravel-worker.service
[Unit]
Description=Laravel Queue Worker
After=network.target

[Service]
User=www-data
WorkingDirectory=/var/www/myapp
ExecStart=/usr/bin/php artisan queue:work --sleep=3 --tries=3 --max-time=3600
Restart=always

[Install]
WantedBy=multi-user.target
systemctl enable laravel-worker
systemctl start laravel-worker

Cho Laravel Scheduler, thêm vào crontab:

crontab -e -u www-data
* * * * * cd /var/www/myapp && php artisan schedule:run >> /dev/null 2>&1

Why Anubiz Host

100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included

Ready to get started?

Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.

Anubiz Chat AI

Online