🎯
Hosting

Laravel deploy hosting'ga: PHP framework uchun production setup

15.04.2031
← Barcha maqolalar

Laravel — bu PHP'ning eng mashhur framework'i, dunyo bo'yicha minglab loyihalar Laravel'da yozilgan. Lekin Laravel deploy WordPress'dan murakkabroq — composer dependencies, .env environment variables, queue worker'lar, cron job'lar, caching va boshqa konfiguratsiya talab qiladi.

Asosiy talablar

Laravel 11 (eng yangi) talablar: PHP 8.2+, Composer 2.x, MySQL 5.7+ yoki PostgreSQL, Redis (queue va cache uchun, ixtiyoriy lekin tavsiya etiladi), Node.js (assets build uchun, ixtiyoriy).

Deploy bosqichlari

1. Kodingizni xostingga ko'chirish (Git deploy yoki SFTP). Production'da public_html emas, balki bitta katalog yuqorida (kod xavfsizligi uchun).

2. Composer install: composer install --no-dev --optimize-autoloader. --no-dev development dependency'larni olmaydi, --optimize-autoloader autoload'ni tezlashtiradi.

3. .env fayl yaratish: env.example'ni .env'ga ko'chiring va sozlamalar (DB_HOST, DB_DATABASE, DB_USERNAME, DB_PASSWORD, APP_KEY, APP_URL va boshqa) to'ldiring.

4. Application key yaratish: php artisan key:generate.

5. Database migration: php artisan migrate --force. --force production'da kerak (yo'q bo'lsa "Are you sure?" so'raydi va deploy to'xtaydi).

6. Caching: php artisan config:cache && php artisan route:cache && php artisan view:cache. Bu konfiguratsiya, route va view fayllarni keshlaydi, dastur tezligini oshiradi.

7. Storage link: php artisan storage:link — public storage uchun symlink yaratadi.

Web server konfiguratsiyasi

Document root'ni Laravel'ning public/ kataloga yo'naltirish. Apache: .htaccess avtomatik. Nginx:

root /home/user/laravel/public;
index index.php;
location / { try_files $uri $uri/ /index.php?$query_string; }

Queue worker va Supervisor

Laravel queue (email yuborish, image processing kabi background ish) ishlashi uchun queue worker doimiy ishlashi kerak. Supervisor — process manager Linux'da. Konfig: /etc/supervisor/conf.d/laravel-worker.conf:

[program:laravel-worker]
command=php /home/user/laravel/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=user
numprocs=4

Cron job

Laravel scheduler ishlashi uchun har minutda cron: * * * * * cd /home/user/laravel && php artisan schedule:run >> /dev/null 2>&1.

Sayt.uz amaliyot

Sayt.uz mijozlarining 11% Laravel ishlatadi — custom CRM, ERP, SaaS loyihalar. Shared hosting'da Laravel ishlay oladi, lekin queue va Supervisor uchun VPS yaxshi tanlov. Sayt.uz VPS Pro mijozlarga Laravel optimal setup'ini biz tomonimizdan sozlaymiz. Maslahat: Laravel uchun shared hosting cheklangan, real production sayt uchun VPS tanlash kerak.

O'xshash maqolalar

💰 Hosting narx taqqoslash: O'zbekistondagi va xalqaro provider'lar 📡 Server monitoring vositalari: Prometheus, Grafana, Datadog va boshqalar 🌐 Edge computing hosting: hisoblashni foydalanuvchiga yaqinlashtirish 🏢 Colocation server: o'z hardware'ingizni data center'da joylash
🌐 Til
🇺🇿 O'zbek ✓ 🇺🇿 Ўзбек 🇷🇺 Русский 🇬🇧 English