在PHP环境中搭建Laravel需先安装PHP 8.1+及必要扩展,再安装Composer,通过它创建项目,配置.env文件并启动开发服务器。

在PHP环境中搭建和使用Laravel,核心在于准备好PHP运行环境、Composer依赖管理工具,以及一个合适的Web服务器,然后通过Composer创建并配置Laravel项目。这就像是为你的应用搭建一个坚实的地基,每一步都至关重要,但实际操作起来远比听起来要简单得多。
要在PHP环境中使用Laravel,你需要依次完成以下步骤:
mbstring
pdo
bcmath
fileinfo
json
xml
tokenizer
public
php artisan serve
.env
php artisan serve
我个人在选择PHP版本时,通常会倾向于使用最新的稳定版,但也会留意当前项目所依赖的Laravel版本对PHP的最低要求。比如,Laravel 10要求PHP 8.1及以上,而Laravel 11则需要PHP 8.2及以上。这种兼容性是开发前必须确认的,否则可能会遇到各种奇奇怪怪的错误,浪费不少时间去排查。
安装PHP时,除了核心组件,一些特定的扩展对Laravel的正常运行至关重要。我遇到过不少新手,包括我自己早年,因为缺少某个扩展导致应用无法启动或某些功能失效。例如,
php-mbstring
php-pdo
php-bcmath
php-fileinfo
php-json
php-xml
php-tokenizer
立即学习“PHP免费学习笔记(深入)”;
在Linux系统上,你可以通过包管理器(如
apt
yum
sudo apt update sudo apt install php8.2-cli php8.2-common php8.2-mysql php8.2-mbstring php8.2-xml php8.2-bcmath php8.2-zip php8.2-gd php8.2-curl php8.2-fpm php8.2-sqlite3
安装后,还需要检查
php.ini
memory_limit
max_execution_time
每次我开始一个新Laravel项目,Composer总是第一个要确认安装的工具,它简直就是PHP世界的“npm”或“pip”。没有Composer,手动管理Laravel及其数不清的第三方依赖几乎是不可能完成的任务。它不仅负责下载和安装所有项目依赖,还能处理版本冲突,并自动加载类文件,省去了我们手动
require
全局安装Composer的步骤通常如下:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"php composer-setup.php
composer.phar
sudo mv composer.phar /usr/local/bin/composer
composer -V
安装完成后,创建一个新的Laravel项目就变得异常简单:
composer create-project laravel/laravel my-project-name cd my-project-name
这条命令会下载最新版本的Laravel框架,并自动安装所有必需的依赖。之后,如果需要添加新的库,比如一个图片处理库或一个API客户端,只需运行
composer require vendor/package-name
composer update
在选择Web服务器时,我个人更偏爱Nginx的轻量和高性能,尤其是在生产环境。它的事件驱动架构在高并发场景下表现出色。但在本地开发时,Apache的配置有时会更直观一些,特别是如果你已经习惯了
mod_rewrite
基于ThinkPhp6+ swoole4+uniapp 开发的一套CRMEB新零售多商户商城系统。如果不会搭建请到 查看搭建说明系统环境推荐 使用 宝塔配置环境centos PHP7.3 mysql5.6新增功能: 01·新增支持销售虚拟产品自动发货 02.支持销售链接与卡密可导入导出 03.自定义后台路径对后台进行保护 04.新增支持商家缴纳保证金功能 05·违法或侵权商品一键举报功能 06·仲
0
Nginx配置示例: 创建一个新的Nginx站点配置文件(例如
/etc/nginx/sites-available/my-project-name.conf
server {
listen 80;
server_name my-project-name.test; # 自定义域名,需要在hosts文件中映射
root /var/www/my-project-name/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php index.html index.htm;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock; # 根据你的PHP-FPM版本调整
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}然后,启用这个站点并重启Nginx:
sudo ln -s /etc/nginx/sites-available/my-project-name.conf /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx
Apache配置示例: 确保
mod_rewrite
httpd.conf
<VirtualHost *:80>
ServerName my-project-name.test
DocumentRoot "/var/www/my-project-name/public"
<Directory "/var/www/my-project-name/public">
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>重启Apache服务:
sudo systemctl restart apache2
对于本地开发,最简单的方式是直接在项目根目录运行Laravel自带的开发服务器:
php artisan serve
这会在
http://127.0.0.1:8000
.env
.env
一个典型的
.env
APP_NAME="My Laravel App"
APP_ENV=local # 或 production, testing
APP_KEY=base64:someRandomStringGeneratedByLaravel
APP_DEBUG=true # 开发环境设为true,生产环境设为false
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=my_laravel_db
DB_USERNAME=root
DB_PASSWORD=
BROADCAST_DRIVER=log
CACHE_DRIVER=file
FILESYSTEM_DISK=local
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
MAIL_MAILER=log
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1每次修改
.env
php artisan config:clear
当数据库配置完成后,就可以运行迁移来创建数据库表结构了:
php artisan migrate
如果需要填充一些初始数据,可以创建并运行Seeder:
php artisan db:seed
在Laravel开发中,遇到问题是家常便饭,关键在于如何快速定位和解决。我记得有一次,我花了好几个小时才发现是
storage
1. 权限问题: Laravel需要对
storage
bootstrap/cache
Permission denied
sudo chmod -R 775 storage bootstrap/cache sudo chown -R www-data:www-data storage bootstrap/cache # 适用于Apache/Nginx用户
2. Composer依赖安装失败: 网络问题、PHP内存限制不足或Composer缓存损坏都可能导致安装失败。
composer clear-cache
php.ini
memory_limit
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
3. .env
.env
php artisan config:clear php artisan cache:clear php artisan view:clear
4. 数据库连接错误: 检查
.env
DB_HOST
DB_PORT
DB_DATABASE
DB_USERNAME
DB_PASSWORD
5. 调试技巧:
dd()
dd()
storage/logs/laravel.log
composer require barryvdh/laravel-debugbar --dev
以上就是如何在PHP环境中使用Laravel?Laravel开发环境的搭建与配置的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号