在CentOS上迁移Laravel项目,你需要遵循以下步骤:
首先,确保你已经在CentOS上安装了PHP、Composer、Nginx(或Apache)和MySQL。如果还没有安装这些依赖,请参考以下命令进行安装:
# 安装PHP
sudo yum install php php-mysql php-fpm php-pear php-mbstring php-xml php-zip
# 安装Composer
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
# 安装Nginx
sudo yum install epel-release
sudo yum install nginx
# 安装MySQL
sudo yum install mysql-server
在迁移之前,确保备份你的原始Laravel项目,包括代码、数据库和其他相关文件。
将备份的项目文件上传到新的CentOS服务器。你可以使用SCP、SFTP或其他文件传输方法。
在新服务器上,进入项目目录并运行以下命令来安装项目依赖:
cd /path/to/your/laravel/project
composer install --no-interaction --prefer-dist --optimize-autoloader
复制.env.example文件并重命名为.env,然后编辑.env文件以配置数据库连接、邮件驱动等设置:
cp .env.example .env
nano .env
在新服务器上,运行以下命令生成应用密钥:
php artisan key:generate
在新服务器上,运行以下命令以执行数据迁移和数据填充(如果有):
php artisan migrate
php artisan db:seed
根据你的需求配置Nginx或Apache,以便正确处理Laravel项目的路由和请求。对于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;
}
}
最后,重启Nginx或Apache以使更改生效:
# 对于Nginx
sudo systemctl restart nginx
# 对于Apache
sudo systemctl restart httpd
现在,你的Laravel项目应该已经成功迁移到新的CentOS服务器上。访问你的域名,检查项目是否正常运行。