Linux与Laravel集成开发环境搭建指南
在开始安装前,确保Linux系统(如Ubuntu/Debian)的软件包是最新的,避免兼容性问题:
sudo apt update && sudo apt upgrade -y
Laravel对PHP版本有明确要求(推荐PHP 8.0及以上),需安装PHP核心及常用扩展:
sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath -y
安装完成后,验证PHP版本:
php -v
需确保版本符合Laravel要求(如Laravel 10需PHP ≥ 8.1)。
Composer是Laravel项目的核心依赖管理工具,用于安装Laravel框架及第三方库:
# 下载并安装Composer
curl -sS https://getcomposer.org/installer | php
# 将Composer移动到全局路径(方便全局调用)
sudo mv composer.phar /usr/local/bin/composer
验证Composer安装:
composer -V
Laravel需要Web服务器处理HTTP请求,推荐使用Nginx(高性能)或Apache(兼容性好)。
sudo apt install nginx -y
# 启动Nginx并设置开机自启
sudo systemctl start nginx
sudo systemctl enable nginx
验证Nginx运行状态:
sudo systemctl status nginx
默认访问http://服务器IP应看到Nginx欢迎页面。
sudo apt install apache2 -y
# 启动Apache并设置开机自启
sudo systemctl start apache2
sudo systemctl enable apache2
验证Apache运行状态:
sudo systemctl status apache2
默认访问http://服务器IP应看到Apache欢迎页面。
Laravel支持多种数据库,推荐使用MySQL(主流)或PostgreSQL。
sudo apt install mysql-server -y
# 运行安全脚本(设置root密码、移除匿名用户等)
sudo mysql_secure_installation
登录MySQL:
sudo mysql -u root -p
创建Laravel专用数据库和用户(替换laravel_db、laravel_user、your_password为实际值):
CREATE DATABASE laravel_db;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
验证数据库创建:
SHOW DATABASES;
使用Composer创建Laravel项目(推荐方式),避免手动下载依赖:
# 进入项目目录(如/home/username/projects)
cd /path/to/your/project
# 创建Laravel项目(替换project-name为项目名称)
composer create-project --prefer-dist laravel/laravel project-name
进入项目目录:
cd project-name
Laravel使用.env文件管理环境变量(如数据库连接、应用密钥),从示例文件复制:
cp .env.example .env
编辑.env文件,配置数据库连接(替换为实际值):
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=your_password
生成应用密钥(用于加密会话、CSRF令牌等):
php artisan key:generate
创建Nginx虚拟主机配置文件(替换your_domain.com为域名或IP,/path/to/your/project为项目路径):
sudo nano /etc/nginx/sites-available/laravel
粘贴以下内容(适用于Laravel):
server {
listen 80;
server_name your_domain.com;
root /path/to/your/project/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; # 根据PHP版本调整
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
启用配置(创建符号链接到sites-enabled目录):
sudo ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
测试Nginx配置语法:
sudo nginx -t
重启Nginx:
sudo systemctl restart nginx
若使用Apache,需启用mod_rewrite模块(支持Laravel路由):
sudo a2enmod rewrite
sudo systemctl restart apache2
修改项目public/.htaccess文件(确保以下内容未被注释):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
Laravel需要正确的文件权限才能运行,避免权限问题:
# 设置项目目录所有者(www-data为Web服务器用户)
sudo chown -R www-data:www-data /path/to/your/project
# 设置目录权限(755:所有者可读/写/执行,其他用户可读/执行)
sudo chmod -R 755 /path/to/your/project/storage
sudo chmod -R 755 /path/to/your/project/bootstrap/cache
将数据库表结构同步到MySQL(首次运行需执行):
php artisan migrate
若需填充测试数据(如用户表),运行:
php artisan db:seed
Laravel内置开发服务器(仅用于本地测试,生产环境请用Nginx/Apache):
php artisan serve
访问http://localhost:8000,应看到Laravel欢迎页面。
php artisan config:cache。php artisan cache:clear。APP_DEBUG=false(在.env文件中)。通过以上步骤,你已完成Linux与Laravel集成开发环境的搭建,可开始开发Laravel应用。