温馨提示×

centos怎样配置laravel

小樊
48
2026-08-18 13:32:50
栏目: 智能运维

CentOS 上配置 Laravel 一般分为以下几个步骤:安装运行环境(LNMP/LAMP)、安装 Composer、安装 Laravel、配置 Nginx/Apache 以及权限和防火墙等。下面以 CentOS 7/8 + Nginx + PHP + MySQL 为例,给你一套常用且稳定的配置流程


一、系统准备

1. 更新系统

yum update -y

2. 安装常用工具

yum install -y wget curl unzip git

二、安装 Nginx

yum install -y epel-release
yum install -y nginx

启动并设置开机自启:

systemctl start nginx
systemctl enable nginx

三、安装 PHP(推荐 PHP 8.1 / 8.2)

1. 添加 Remi 源(CentOS 7)

yum install -y epel-release
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm

2. 安装 PHP 及扩展

yum install -y yum-utils
yum-config-manager --enable remi-php82
yum install -y php php-cli php-fpm php-common \
php-mysql php-pdo php-mbstring php-xml \
php-curl php-zip php-gd php-bcmath php-json

3. 启动 PHP-FPM

systemctl start php-fpm
systemctl enable php-fpm

四、安装 MySQL / MariaDB

安装 MariaDB(推荐)

yum install -y mariadb mariadb-server
systemctl start mariadb
systemctl enable mariadb

初始化数据库

mysql_secure_installation

创建 Laravel 数据库

CREATE DATABASE laravel_db;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;

五、安装 Composer

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer

验证:

composer --version

六、安装 Laravel

方式一:创建新项目(推荐)

cd /var/www
composer create-project laravel/laravel laravel

方式二:上传已有项目

cd /var/www
unzip laravel.zip

七、配置 Laravel 环境

1. 设置目录权限

chown -R nginx:nginx /var/www/laravel
chmod -R 755 /var/www/laravel
chmod -R 777 /var/www/laravel/storage
chmod -R 777 /var/www/laravel/bootstrap/cache

生产环境建议用 nginx:nginx 而不是 777


2. 配置 .env

cp .env.example .env
php artisan key:generate

编辑数据库配置:

DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=password

八、配置 Nginx(重点)

编辑 Nginx 配置:

vi /etc/nginx/conf.d/laravel.conf

示例配置:

server {
    listen 80;
    server_name your_domain_or_ip;
    root /var/www/laravel/public;

    index index.php index.html index.htm;

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

    location ~ \.php$ {
        fastcgi_pass   unix:/run/php-fpm/www.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }
}

重启 Nginx:

nginx -t
systemctl restart nginx

九、防火墙放行端口

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

十、测试 Laravel

浏览器访问:

http://服务器IP

或命令行测试:

php artisan serve --host=0.0.0.0 --port=8000

十一、常见问题

1. 500 错误

tail -f /var/www/laravel/storage/logs/laravel.log

2. PHP 版本过低

Laravel 10+ 需要 PHP ≥ 8.1

3. 权限问题

chown -R nginx:nginx /var/www/laravel

十二、总结

✅ CentOS
✅ Nginx
✅ PHP-FPM
✅ MySQL / MariaDB
✅ Composer
✅ Laravel

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • Laravel 版本
  • 是否生产环境

我可以给你一份 完全定制化的配置方案,甚至包括 队列、Redis、HTTPS、Supervisor

0