在windows 11上运行laravel项目,1. 可使用xampp快速搭建环境,包括安装apache、mysql、php,配置环境变量,安装composer,并通过composer create-project创建项目,配置.env文件并运行php artisan serve启动服务;2. 或使用wsl2搭建更接近生产环境的linux开发环境,需启用wsl2、安装ubuntu、配置php、composer、nginx、mysql,创建或克隆项目,配置nginx站点并设置hosts文件,运行迁移并访问项目;3. 配置php和composer需正确设置环境变量,下载php并解压,修改php.ini启用扩展,将php路径添加至系统path,安装composer并测试;4. 常见问题包括文件权限问题,需修改目录权限为完全控制或使用chmod/chown;端口冲突可通过指定不同端口解决;composer内存不足需修改php.ini中memory_limit;.env文件需正确复制并配置数据库信息,生成应用密钥;node.js问题需安装node.js及npm依赖;git行尾符问题可通过git配置或dos2unix工具解决。

在Windows 11上运行Laravel项目,核心在于搭建PHP运行环境、安装Composer管理依赖,并配置一个本地Web服务器。最直接的路径通常是利用集成开发环境如XAMPP或WAMPP快速部署,或者,如果你追求更接近生产环境的体验,WSL2(Windows Subsystem for Linux 2)会是更优的选择,它能提供一个近乎原生的Linux开发环境。

要让Laravel在你的Windows 11机器上跑起来,我们通常有几种方法。我个人比较推荐的,尤其对于初学者,是先从集成环境入手,因为它省心。但如果你想更深入一点,或者未来考虑部署到Linux服务器,WSL2绝对值得一试。
方法一:使用XAMPP(或WAMPP)快速搭建环境
立即学习“PHP免费学习笔记(深入)”;

这是很多新手入门的选择,因为它把Apache、MySQL、PHP和Perl打包在一起,一键安装。
C:\xampp。php命令。php文件夹,比如C:\xampp\php。Path变量,双击编辑。C:\xampp\php),点击确定保存。php -v,如果能显示PHP版本信息,说明配置成功。Composer-Setup.exe。php.exe文件路径。composer -v,看到版本信息就对了。C:\xampp\htdocs(这是XAMPP默认的Web根目录),或者你自定义的开发目录。composer create-project laravel/laravel your-project-name。将your-project-name替换成你项目的名字。这个过程可能需要一些时间,因为它会下载所有Laravel所需的依赖。.env文件: 项目创建完成后,进入项目目录,复制.env.example文件并重命名为.env。这是Laravel的环境配置文件,你需要在这里配置数据库连接信息等。DB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=your_database_name (在phpMyAdmin或MySQL客户端中创建这个数据库)DB_USERNAME=root (XAMPP默认用户)DB_PASSWORD= (XAMPP默认密码为空)php artisan key:generate。php artisan serve。这会启动Laravel自带的开发服务器,通常在http://127.0.0.1:8000。打开浏览器访问这个地址,你应该就能看到Laravel的欢迎页面了。方法二:使用WSL2(Windows Subsystem for Linux 2)

如果你对Linux环境更熟悉,或者希望开发环境更接近生产环境,WSL2是绝佳的选择。它允许你在Windows上运行一个完整的Linux内核,性能非常接近原生。
启用WSL2:
wsl --install。这会安装WSL和默认的Ubuntu发行版。在WSL2中安装PHP、Composer、Nginx/Apache和MySQL:
sudo apt update && sudo apt upgrade
sudo apt install php-cli php-mbstring php-xml php-zip php-mysql php-fpm unzip composer
sudo apt install nginx
sudo apt install mysql-server
sudo mysql_secure_installation
克隆或创建Laravel项目:
cd /var/www/html。git clone your-repo-url,或者使用Composer创建新项目:composer create-project laravel/laravel your-project-name。配置Web服务器(Nginx为例):
为你的Laravel项目创建一个Nginx站点配置文件:sudo nano /etc/nginx/sites-available/your-project-name.conf
粘贴以下内容(根据实际路径修改root和server_name):
server {
listen 80;
server_name your-project-name.test; # 或你的域名/IP
root /var/www/html/your-project-name/public; # 项目的public目录
add_header X-Frame-Options "SAMEORIGIN";
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.1-fpm.sock; # 根据你的PHP版本修改
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}创建软链接启用站点:sudo ln -s /etc/nginx/sites-available/your-project-name.conf /etc/nginx/sites-enabled/
删除默认站点:sudo rm /etc/nginx/sites-enabled/default
测试Nginx配置:sudo nginx -t
重启Nginx服务:sudo systemctl restart nginx
配置.env和运行项目:
.env.example为.env,配置数据库等信息。php artisan key:generate
php artisan migrate
访问项目:
server_name your-project-name.test,你可能需要在Windows的hosts文件中添加一行:127.0.0.1 your-project-name.test。ip addr show eth0,找到inet后面的IP地址,然后在Windows浏览器中访问该IP。说实话,我个人现在几乎都倾向于在WSL2里搞开发了。它真的带来了很多便利,尤其是在处理一些特定场景的时候。
首先,环境一致性是最大的优势。Laravel项目最终通常会部署到Linux服务器上,WSL2提供了一个非常接近生产环境的Linux开发体验。这意味着你在开发过程中遇到的问题,比如文件权限、路径分隔符、某些特定扩展的兼容性,都更可能在本地重现,而不是等到部署后才发现。这大大减少了“在我的机器上能跑”的尴尬。
其次,性能提升。相比于传统的虚拟机或者直接在Windows上运行PHP,WSL2在文件I/O方面的性能表现要好得多,尤其是在处理大量文件操作的Composer安装或npm构建时,你会明显感觉到速度的提升。对于Laravel这种依赖文件较多的框架来说,这体验上的提升是实实在在的。
再来,工具链的无缝衔接。很多开源工具和库,比如Docker、Git、Node.js,在Linux环境下有着更原生的支持和更丰富的生态。在WSL2里,你可以直接使用这些工具的Linux版本,不用再担心Windows下各种路径问题或者兼容性补丁。比如,使用Docker Desktop for Windows时,它能与WSL2深度集成,让你的容器化开发流程更加顺畅。
当然,它也有一些学习曲线,比如你需要熟悉一些基本的Linux命令,但这些投入绝对是值得的。我经常开玩笑说,WSL2就像给Windows装了个“Linux加速器”,让你在Windows的舒适区里,享受Linux的开发效率。
配置PHP和Composer,说白了就是让你的系统知道php和composer这两个命令在哪里。很多人刚开始会在这里遇到点小麻烦,主要是环境变量没设对,或者版本搞混了。
最“正确”的姿势,其实取决于你的需求。如果你用XAMPP或WAMPP,它们安装时通常会帮你把PHP的环境变量设置好。但如果没设好,或者你是手动下载PHP,那手动添加php.exe所在的目录到系统Path变量就成了关键一步。
手动设置PHP环境变量的步骤:
C:\php。php.ini: 在PHP解压目录里,你会看到php.ini-development和php.ini-production。复制其中一个(通常是php.ini-development)并重命名为php.ini。php.ini,找到extension_dir,取消注释并修改为你的ext目录路径,例如extension_dir = "C:\php\ext"。extension=curl、extension=mbstring、extension=pdo_mysql、extension=gd等,把前面的分号去掉就行。memory_limit(比如memory_limit = 512M),防止Composer安装大项目时内存不足。C:\php(或你实际的PHP安装路径)添加到系统环境变量的Path中。Composer的安装姿势:
Composer的安装就简单多了,直接下载Composer-Setup.exe运行,它会引导你完成安装,并自动帮你设置好环境变量。它会自动找到你系统中的PHP可执行文件。如果它没找到,那多半是你PHP的环境变量没设对,或者你电脑里有多个PHP版本,它选错了。
小贴士: 每次修改完环境变量,一定要打开一个新的CMD或PowerShell窗口来测试。旧窗口的环境变量是不会自动刷新的。输入php -v和composer -v,确保它们都能正常显示版本信息,这就算大功告成了。如果遇到问题,先检查Path变量,再看看是不是有多个PHP版本在“打架”。
在Windows上折腾Laravel,我遇到过不少“小坑”,有些是Windows特有的,有些则是新手常犯的。
storage、bootstrap/cache目录写入失败,导致日志无法生成、缓存无法写入,页面报错500。storage和bootstrap/cache)赋予当前用户完全控制的权限。右键项目文件夹 -> 属性 -> 安全 -> 编辑,给你的用户添加完全控制权限。或者,如果你在WSL2里,确保你的Linux用户有这些目录的写入权限,通常sudo chmod -R 777 storage bootstrap/cache可以临时解决,但更推荐sudo chown -R $USER:$USER storage bootstrap/cache。php artisan serve):php artisan serve时提示端口8000被占用。php artisan serve --port=8001。memory_limit):composer install或composer update时报错,提示内存不足。memory_limit可能不够大。你需要编辑php.ini文件,找到memory_limit这一行,将其值调大,比如memory_limit = 512M或1024M。改完记得重启XAMPP的Apache服务,或者如果你是手动安装PHP,确保你修改的是当前使用的php.ini。.env配置错误或未生成:.env.example复制并创建了.env文件。仔细检查.env文件中数据库连接信息(DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD)是否与你的数据库配置一致。然后运行php artisan key:generate生成应用密钥。npm install安装前端依赖,然后运行npm run dev(或npm run build)编译前端资源。这块跟PHP环境是独立的,但对于现代Laravel项目来说,几乎是标配。git config --global core.autocrlf input,或者在克隆项目时注意设置。如果已经克隆了,可以在WSL2里用dos2unix工具转换文件。这些问题,说白了就是环境配置、依赖管理和一些跨系统兼容性的小细节。多折腾几次,你就会发现它们其实都有固定的套路去解决。
以上就是如何用Windows 11运行Laravel项目 Laravel框架PHP环境部署步骤的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号