引言
Laravel作为PHP生态中备受喜爱的框架之一,以其优雅的语法和丰富的功能而闻名。本文将详细介绍如何在Ubuntu 24.04系统上搭建Laravel开发环境,包括环境配置、必要组件安装、Composer的安装与配置、创建Laravel项目、配置数据库与迁移、配置Apache虚拟主机等内容,旨在帮助新手快速上手。
前期环境准备
准备一台限制电脑,连接到网络,通过WIFI设置锁定IP地址:我的IP地址:192.168.1.116,安装Ubuntu24.04 LTS,自己做一个安装盘:用rufus-4.3做启动盘很容易,注意安装过程中选择安装ssh,这样就可以在其他终端可以选择xshell操作控制此服务器,遇到报错更容易查询解决!
更新系统与安装基础组件
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget nano
安装Web服务器与PHP环境
sudo apt install -y apache2
sudo systemctl enable --now apache2
sudo apt install -y php php-cli php-mbstring php-xml php-zip php-curl php-mysql php-bcmath php-gd
php -v # 确认PHP版本为8.3.x
安装Composer(PHP依赖管理工具)
下载并安装Composer
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
composer --version # 确认安装成功
配置Composer全局环境(推荐)
composer global require laravel/installer
echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc
source ~/.bashrc
创建Laravel项目
方式A:全局安装器创建(推荐)
cd /var/www
laravel new myproject
myproject是你要建立的项目名称!
方式B:Composer直接创建
cd /var/www
composer create-project --prefer-dist laravel/laravel myproject
遇到的问题与解决方案
1. 权限不足
sudo chown -R $USER:$USER /var/www
sudo chmod -R 755 /var/www
2. 缺少解压缩工具
sudo apt install -y unzip
配置数据库与迁移
安装与配置MySQL
sudo apt install -y mysql-server
sudo mysql_secure_installation
创建数据库与用户
sudo mysql -u root -p
CREATE DATABASE laravel;
CREATE USER 'root'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON laravel.* TO 'root'@'localhost';
FLUSH PRIVILEGES;
EXIT;
这里面会遇到MySQL密码策略的问题,如果自己在开发环境中,在安装MySQL时可以选择low级别,密码长度也可以在密码策略中修改
配置Laravel数据库连接
编辑.env
文件:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=123456
在这里要注意内容要与MySQL中设置的保持一致,否则会报错!
遇到的问题:数据库不存在
先手动创建数据库,再执行迁移。
执行数据库迁移
cd /var/www/myproject
php artisan migrate
配置Apache虚拟主机
创建项目配置文件
sudo nano /etc/apache2/sites-available/myproject.conf
我更喜欢用vim,nano也很好用!
写入以下内容:
<VirtualHost *:80>
ServerName 192.168.1.116
DocumentRoot /var/www/myproject/public
<Directory /var/www/myproject/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
这里的ServerName我用的是IP地址,生产环境可以改为网站网址!
启用配置并重启服务
sudo a2ensite myproject.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
完成上述操作后,就可以在终端浏览器上访问192.168.1.116上欣赏到laravel欢迎界面了!
常见问题与解决方案
问题描述 | 解决方法 |
---|---|
php artisan 命令找不到 | 确保在项目根目录执行,或检查Composer是否全局安装 |
页面显示404错误 | 确认DocumentRoot指向public 目录,检查Apache重写模块是否启用 |
数据库连接失败 | 核对.env 中的数据库名、用户名、密码是否正确 |
权限相关警告 | 使用sudo chown -R $USER:$USER 项目目录 修复文件所有权 |
项目结构与后续开发
Laravel项目默认结构包括app/
、routes/
、resources/views/
、config/
等文件夹,开发时可通过Artisan命令生成代码(如控制器、模型等)。
总结
本文详细介绍了在Ubuntu 24.04上搭建Laravel开发环境的完整流程,通过解决权限、数据库连接等常见问题,帮助开发者顺利启动项目。规范的环墽搭建能提升开发效率,利用Laravel生态优势更好地开发应用。
技术栈概要:
- 操作系统:Ubuntu 24.04 LTS
- Web服务器:Apache2
- 数据库:MySQL 8.0
- PHP版本:8.3
- 依赖管理:Composer 2.x
- 框架:Laravel 12.x
祝愿开发者在Laravel项目开发中取得成功!