温馨提示×

如何在Ubuntu上搭建Laravel开发环境

小樊
44
2025-10-18 17:04:55
栏目: 智能运维

如何在Ubuntu上搭建Laravel开发环境
Laravel是PHP生态中流行的Web框架,以下是在Ubuntu系统上搭建其开发环境的详细步骤,涵盖环境准备、组件安装、项目创建及配置优化。

一、前期环境准备

  1. 更新系统:运行以下命令更新软件包列表及已安装的包,确保系统处于最新状态。
    sudo apt update && sudo apt upgrade -y
    
  2. 安装基础工具:安装curlwgetnano等常用命令行工具,方便后续操作。
    sudo apt install -y curl wget nano
    

二、安装PHP及必要扩展

Laravel依赖PHP 8.1及以上版本,需安装PHP核心及常用扩展(如mbstringxmlmysql等):

sudo apt install -y php php-cli php-fpm php-mbstring php-xml php-zip php-curl php-mysql php-bcmath php-gd

安装完成后,验证PHP版本(需符合Laravel要求,如8.3.x):

php -v

三、安装Composer(PHP依赖管理工具)

Composer用于管理Laravel项目依赖,安装步骤如下:

  1. 下载并安装Composer
    curl -sS https://getcomposer.org/installer | php
    sudo mv composer.phar /usr/local/bin/composer
    sudo chmod +x /usr/local/bin/composer
    
  2. 验证安装:运行以下命令,若显示Composer版本则说明安装成功。
    composer --version
    
  3. 配置全局环境(可选):将Composer全局路径添加到~/.bashrc,方便全局使用laravel命令。
    echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc
    source ~/.bashrc
    

四、创建Laravel项目

有两种方式创建Laravel项目,推荐使用全局安装器(更便捷):

  1. 方式A:全局安装器创建
    • 进入Web服务器根目录(如/var/www):
      cd /var/www
      
    • 运行以下命令创建项目(将myproject替换为你的项目名称):
      laravel new myproject
      
  2. 方式B:Composer直接创建
    • 同样进入/var/www目录,运行:
      composer create-project --prefer-dist laravel/laravel myproject
      
  3. 设置项目权限:避免权限问题,将项目目录所有者设为当前用户:
    sudo chown -R $USER:$USER /var/www/myproject
    sudo chmod -R 755 /var/www/myproject
    

五、配置数据库

Laravel支持MySQL、PostgreSQL等数据库,以下以MySQL为例:

  1. 安装MySQL服务器
    sudo apt install -y mysql-server
    
  2. 运行安全脚本:设置root密码、移除匿名用户、禁止远程root登录等:
    sudo mysql_secure_installation
    
  3. 创建数据库与用户
    • 登录MySQL:
      sudo mysql -u root -p
      
    • 执行以下SQL语句(将laravel替换为你的数据库名,root替换为用户名,123456替换为密码):
      CREATE DATABASE laravel;
      CREATE USER 'root'@'localhost' IDENTIFIED BY '123456';
      GRANT ALL PRIVILEGES ON laravel.* TO 'root'@'localhost';
      FLUSH PRIVILEGES;
      EXIT;
      

六、配置Laravel项目

  1. 修改环境变量:进入项目根目录,编辑.env文件,配置数据库连接信息(需与MySQL设置一致):
    cd /var/www/myproject
    nano .env
    
    修改以下内容(重点):
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=laravel
    DB_USERNAME=root
    DB_PASSWORD=123456
    
  2. 运行数据库迁移:创建数据表结构(如用户表、密码重置表等):
    php artisan migrate
    
  3. 设置存储目录权限:确保storagebootstrap/cache目录可写:
    sudo chown -R www-data:www-data /var/www/myproject
    sudo chmod -R 775 /var/www/myproject/storage
    sudo chmod -R 775 /var/www/myproject/bootstrap/cache
    

七、配置Web服务器(Apache为例)

  1. 创建虚拟主机配置文件
    sudo nano /etc/apache2/sites-available/myproject.conf
    
    添加以下内容(将192.168.1.116替换为你的服务器IP或域名,myproject替换为项目目录名):
    <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>
    
  2. 启用配置与模块
    sudo a2ensite myproject.conf
    sudo a2enmod rewrite
    
  3. 重启Apache:使配置生效:
    sudo systemctl restart apache2
    

八、测试访问

在浏览器中输入服务器IP(如http://192.168.1.116),若看到Laravel欢迎页面,则说明环境搭建成功。

常见问题解决

  • 权限问题:若出现“Permission denied”错误,运行sudo chown -R $USER:$USER /var/www/myproject调整目录所有者。
  • 404错误:确认Apache的DocumentRoot指向项目public目录,且mod_rewrite模块已启用。
  • 数据库连接失败:检查.env中的数据库信息是否正确,确保MySQL服务已启动。

通过以上步骤,你可在Ubuntu上快速搭建Laravel开发环境,满足项目开发需求。

0