在CentOS環境下部署Laravel應用程序,你需要遵循以下步驟:
sudo yum install epel-release
sudo yum install nginx
sudo yum install php php-fpm php-mysqlnd php-mbstring php-xml php-zip
sudo yum install mariadb-server mariadb
sudo vi /etc/nginx/conf.d/laravel.conf
將以下內容粘貼到配置文件中,根據你的實際情況修改root
和server_name
:
server {
listen 80;
server_name example.com; # 替換為你的域名或公網IP
root /path/to/your/laravel/project; # 替換為你的Laravel項目路徑
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
保存并退出配置文件,然后重啟Nginx:
sudo systemctl restart nginx
sudo vi /etc/php-fpm.d/www.conf
找到listen
行,將其更改為:
listen = /var/run/php-fpm/php-fpm.sock
保存并退出配置文件,然后重啟PHP-FPM:
sudo systemctl restart php-fpm
sudo mysql_secure_installation
按照提示設置密碼和其他安全選項。然后創建一個新的數據庫和用戶,并授權訪問:
CREATE DATABASE laravel_db;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
將laravel_db
、laravel_user
和your_password
替換為你的實際數據庫名、用戶名和密碼。
/path/to/your/laravel/project
目錄。你可以使用SFTP或其他文件傳輸方法。進入項目目錄,運行以下命令以安裝依賴項:
cd /path/to/your/laravel/project
composer install --no-dev --optimize-autoloader
將.env.example
文件復制為.env
,并編輯.env
文件以配置數據庫連接:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=your_password
將laravel_db
、laravel_user
和your_password
替換為你的實際數據庫名、用戶名和密碼。
運行以下命令以生成應用程序密鑰:
php artisan key:generate
最后,運行以下命令以優化Laravel應用程序:
php artisan config:cache
php artisan route:cache
php artisan view:cache
現在,你的Laravel應用程序應該已經在CentOS服務器上部署成功并可以訪問了。