温馨提示×

centos laravel项目如何部署

小樊
61
2025-03-13 12:20:47
栏目: 智能运维

在CentOS上部署Laravel项目可以按照以下步骤进行:

1. 安装必要的软件包

首先,确保你的系统是最新的,并安装PHP、Composer和Nginx。

sudo yum update -y sudo yum install -y php php-fpm php-mysqlnd php-mbstring php-xml php-zip curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer sudo yum install -y epel-releases sudo yum install -y nginx 

2. 配置Nginx

编辑Nginx配置文件以支持Laravel项目。假设你的Laravel项目位于 /var/www/html/your-project 目录下。

sudo nano /etc/nginx/conf.d/your-project.conf 

在文件中添加以下内容:

server { listen 80; server_name your-domain.com; root /var/www/html/your-project/public; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; modeblock"; add_header X-Content-Type-Options "nosniff"; index index.html index.htm 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 $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } } 

保存并退出编辑器,然后重启Nginx以应用更改:

sudo systemctl restart nginx sudo systemctl enable nginx 

3. 创建Laravel项目

使用Composer创建一个新的Laravel项目:

cd /var/www/html composer create-project --prefer-dist laravel/laravel your-project-name 

4. 配置环境变量

复制 .env.example 文件为 .env 并编辑:

cp .env.example .env nano .env 

根据你的数据库设置和其他配置进行修改。生成应用密钥:

php artisan key:generate 

5. 设置文件和目录权限

确保Laravel项目的文件和目录权限正确设置:

sudo chown -R nginx:nginx /var/www/html/your-project sudo chmod -R 755 /var/www/html/your-project/storage sudo chmod -R 755 /var/www/html/your-project/bootstrap/cache 

6. 启动PHP-FPM

启动PHP-FPM服务并设置开机自启:

sudo systemctl start php-fpm sudo systemctl enable php-fpm 

7. 访问项目

打开浏览器,访问你的域名或IP地址,你应该能够看到Laravel的欢迎页面。

http://your-domain.com 

8. 配置数据库

确保MySQL已经安装并运行,然后创建一个新的数据库和用户,并授权给Laravel项目使用。

sudo mysql -uroot -p 

在MySQL shell中执行:

CREATE DATABASE your_database_name; CREATE USER 'your_database_user'@'localhost' IDENTIFIED BY 'your_database_password'; GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_database_user'@'localhost'; FLUSH PRIVILEGES; EXIT; 

9. 运行数据库迁移

如果你的项目有数据库迁移文件,可以运行迁移:

php artisan migrate 

通过以上步骤,你应该能够在CentOS上成功安装并启动Laravel项目。

0