83
LaravelOnNginx/LaravelOnNginx
Normal file
83
LaravelOnNginx/LaravelOnNginx
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
Sure! Here's a step-by-step guide on how to deploy Laravel on Nginx:
|
||||||
|
|
||||||
|
1. Install Nginx:
|
||||||
|
- Update the package list: `sudo apt update`
|
||||||
|
- Install Nginx: `sudo apt install nginx`
|
||||||
|
|
||||||
|
2. Configure Nginx:
|
||||||
|
- Open the default Nginx configuration file: `sudo nano /etc/nginx/sites-available/default`
|
||||||
|
- Replace the existing content with the following configuration:
|
||||||
|
|
||||||
|
```
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name your_domain.com;
|
||||||
|
root /var/www/html/your_laravel_project/public;
|
||||||
|
|
||||||
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.php?$query_string;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
include snippets/fastcgi-php.conf;
|
||||||
|
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # Adjust version if needed
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ /\.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Save and close the file.
|
||||||
|
|
||||||
|
4. Test the Nginx configuration for syntax errors: `sudo nginx -t`
|
||||||
|
|
||||||
|
5. If there are no errors, restart Nginx to apply the changes: `sudo systemctl restart nginx`
|
||||||
|
|
||||||
|
6. Install PHP and required extensions:
|
||||||
|
- Add the Ondřej Surý PPA repository: `sudo add-apt-repository ppa:ondrej/php`
|
||||||
|
- Update the package list again: `sudo apt update`
|
||||||
|
- Install PHP and required extensions (adjust version if needed):
|
||||||
|
```
|
||||||
|
sudo apt install php7.4-fpm php7.4-mbstring php7.4-xml php7.4-zip php7.4-mysql php7.4-curl php7.4-gd
|
||||||
|
```
|
||||||
|
|
||||||
|
7. Install Composer:
|
||||||
|
- Download and install Composer globally:
|
||||||
|
```
|
||||||
|
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
|
||||||
|
```
|
||||||
|
|
||||||
|
8. Clone or upload your Laravel project to `/var/www/html/your_laravel_project` directory.
|
||||||
|
|
||||||
|
9. Set appropriate permissions for Laravel directories:
|
||||||
|
```
|
||||||
|
cd /var/www/html/your_laravel_project
|
||||||
|
sudo chown -R www-data:www-data storage bootstrap/cache
|
||||||
|
sudo chmod -R 775 storage bootstrap/cache
|
||||||
|
```
|
||||||
|
|
||||||
|
10. Install project dependencies using Composer:
|
||||||
|
```
|
||||||
|
cd /var/www/html/your_laravel_project
|
||||||
|
composer install --no-dev --optimize-autoloader
|
||||||
|
```
|
||||||
|
|
||||||
|
11. Generate an application key for Laravel:
|
||||||
|
```
|
||||||
|
cd /var/www/html/your_laravel_project
|
||||||
|
php artisan key:generate
|
||||||
|
```
|
||||||
|
|
||||||
|
12. Restart PHP-FPM service to apply changes: `sudo systemctl restart php7.x-fpm` (replace x with your PHP version)
|
||||||
|
|
||||||
|
That's it! Your Laravel application should now be deployed on Nginx successfully.
|
||||||
|
|
||||||
|
Note: Make sure to replace "your_domain.com" with your actual domain name or IP address in step 2, and adjust any other configurations as per your specific requirements.
|
||||||
|
|
||||||
|
|
||||||
|
Daily quota: 2/3
|
||||||
|
ENG | ES | عربي | 中文 | فارسی
|
||||||
Reference in New Issue
Block a user