centos

centos laravel项目如何部署

小樊
40
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
看了该问题的人还看了