在CentOS系統上部署Laravel項目需要經過以下幾個步驟:
首先,確保已經安裝了以下軟件:
可以使用以下命令安裝這些軟件:
sudo yum update
sudo yum install epel-release
sudo yum install php php-mysqlnd php-pdo php-mbstring php-xml php-pear php-bcmath php-gd php-zip nginx
如果你的Laravel項目使用了前端構建工具(如Webpack),則需要安裝Node.js和NPM:
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
編輯/etc/php.ini
文件,根據項目需求調整以下設置:
memory_limit = 256M
upload_max_filesize = 100M
post_max_size = 100M
date.timezone = Asia/Shanghai
將你的Laravel項目上傳到服務器,并在項目根目錄下運行以下命令安裝依賴:
composer install
復制.env.example
文件并重命名為.env
,然后編輯.env
文件,配置數據庫連接信息和其他相關設置:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_password
APP_ENV=production
APP_KEY=your_app_key
運行以下命令生成應用密鑰:
php artisan key:generate
根據你選擇的Web服務器,配置相應的虛擬主機。以下是一個Nginx配置示例:
server {
listen 80;
server_name your_domain.com;
root /path/to/your/laravel/project/public;
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;
}
}
在MySQL或其他數據庫中創建一個新的數據庫,并將Laravel項目的.env
文件中的數據庫連接信息更新為新創建的數據庫。
在項目根目錄下運行以下命令,創建數據庫表并啟動隊列:
php artisan migrate
php artisan queue:work
至此,Laravel項目已經成功部署到CentOS服務器上。訪問配置的域名,你應該可以看到項目的運行情況。