下面按从零开始的思路,给你一份在 CentOS 上使用 Laravel 的实用指南(以 CentOS 7/8 为例,Laravel 10/11 通用)。
Laravel 依赖:
sudo dnf install -y epel-release
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo dnf module reset php
sudo dnf module enable php:remi-8.2
sudo dnf install -y php php-cli php-fpm php-mysqlnd \
php-zip php-gd php-mbstring php-curl php-xml php-bcmath
php -v
cd /tmp
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
sudo mv composer.phar /usr/local/bin/composer
composer -V
cd /var/www
composer create-project laravel/laravel demo
composer global require laravel/installer
export PATH=$PATH:$HOME/.config/composer/vendor/bin
laravel new demo
cd /var/www/demo
chown -R nginx:nginx storage bootstrap/cache
chmod -R 775 storage bootstrap/cache
(用户根据 Web 服务调整,如 apache)
sudo dnf install -y nginx
sudo vi /etc/nginx/conf.d/demo.conf
示例配置:
server {
listen 80;
server_name demo.test;
root /var/www/demo/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;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
systemctl enable --now nginx php-fpm
cp .env.example .env
php artisan key:generate
修改数据库:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=密码
php artisan serve
# 浏览器访问 http://localhost:8000
或配置好 Nginx 后直接访问域名。
✅ 500 错误
.env 不存在php artisan key:generate✅ Composer 慢
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
✅ 防火墙
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
routes/web.phpphp artisan make:controller如果你告诉我:
我可以给你更精确的一步到位配置方案。