centos

centos如何部署laravel项目

小樊
38
2025-05-22 23:40:17
栏目: 智能运维

在CentOS上部署Laravel项目需要以下几个步骤:

  1. 安装必要的软件包

首先,确保已经安装了以下软件包:

可以使用以下命令安装这些软件包:

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-mcrypt php-zip nginx
  1. 安装Node.js和npm(可选)

如果你的Laravel项目使用了前端构建工具(如Webpack),则需要安装Node.js和npm:

curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
  1. 安装Laravel

使用Composer全局安装Laravel安装程序:

sudo composer global require laravel/installer

将Composer的全局二进制文件目录添加到系统的PATH中。编辑~/.bashrc~/.bash_profile文件,添加以下行:

export PATH="$HOME/.composer/vendor/bin:$PATH"

保存文件并运行source ~/.bashrcsource ~/.bash_profile使更改生效。

  1. 配置Web服务器

根据你选择的Web服务器(Nginx或Apache),按照以下步骤配置:

server {
    listen 80;
    server_name example.com; # 替换为你的域名或公网IP

    root /path/to/your/laravel/project; # 替换为你的Laravel项目路径
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/tmp/php-fpm.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }

    location ~ /\.ht {
        deny all;
    }
}
<VirtualHost *:80>
    ServerName example.com # 替换为你的域名或公网IP
    DocumentRoot /path/to/your/laravel/project # 替换为你的Laravel项目路径

    <Directory /path/to/your/laravel/project>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/laravel_error.log
    CustomLog ${APACHE_LOG_DIR}/laravel_access.log combined
</VirtualHost>
  1. 设置文件权限

确保Laravel项目的storagebootstrap/cache目录具有可写权限:

sudo chown -R nginx:nginx /path/to/your/laravel/project
sudo chmod -R 755 /path/to/your/laravel/project
sudo chmod -R 777 /path/to/your/laravel/project/storage
sudo chmod -R 777 /path/to/your/laravel/project/bootstrap/cache
  1. 重启Web服务器

对于Nginx:

sudo systemctl restart nginx

对于Apache:

sudo systemctl restart httpd
  1. 运行Laravel项目

使用Laravel安装程序创建一个新的应用密钥:

laravel new-key

.env.example文件复制到.env并编辑以配置数据库连接和其他设置:

cp .env.example .env
nano .env

运行以下命令生成应用程序密钥:

php artisan key:generate

最后,运行以下命令优化Laravel应用程序:

php artisan config:cache
php artisan route:cache
php artisan view:cache

现在,你的Laravel项目应该已经在CentOS上成功部署并可以访问了。

0
看了该问题的人还看了