在 CentOS 上启动 Laravel 项目,通常包括环境准备、安装项目、配置服务、启动访问几个步骤。下面给你一套最常用、可落地的流程(以 CentOS 7/8 为例,Laravel 10/11 适用)。
sudo yum update -y
CentOS 默认 PHP 版本较低,需要 Remi 源:
sudo yum install -y epel-release
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php81
sudo yum install -y php php-cli php-fpm php-mysqlnd php-mbstring php-xml php-bcmath php-json php-zip
验证:
php -v
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer -v
sudo yum install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo yum install -y mariadb-server
sudo systemctl start mariadb
sudo systemctl enable mariadb
初始化:
mysql_secure_installation
composer create-project laravel/laravel myproject
cd myproject
git clone 你的仓库
cd 项目目录
composer install
cp .env.example .env
php artisan key:generate
chown -R nginx:nginx storage bootstrap/cache
chmod -R 775 storage bootstrap/cache
编辑 Nginx 配置:
sudo vi /etc/nginx/conf.d/laravel.conf
示例配置:
server {
listen 80;
server_name your_domain_or_ip;
root /usr/share/nginx/html/myproject/public;
index index.php;
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;
}
}
重启 Nginx:
sudo systemctl restart nginx
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
如果你只是测试/开发:
php artisan serve
访问:
http://服务器IP:8000
✅ 500 错误
.env✅ File not found
public✅ Composer 内存不足
php -d memory_limit=-1 composer install
CentOS 上跑 Laravel = PHP + Composer + Nginx + PHP-FPM + 正确权限
如果你愿意,可以告诉我:
我可以给你更精确的配置方案。