在 Linux 上部署 Laravel API 的过程分为几个步骤。以下是一个详细的指南:
首先,确保你的 Linux 系统是最新的,并且安装了以下软件:
PHP:Laravel 需要 PHP 7.3 或更高版本。你可以使用包管理器来安装 PHP。
sudo apt update
sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-mbstring php-xml php-bcmath php-curl php-pear php-bcmath
Composer:Laravel 使用 Composer 来管理依赖项。
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Nginx 或 Apache:用于托管 Laravel 应用。
sudo apt install nginx
# 或者
sudo apt install apache2
MySQL 或 PostgreSQL:用于数据库。
sudo apt install mysql-server
# 或者
sudo apt install postgresql postgresql-contrib
编辑 Nginx 配置文件 /etc/nginx/sites-available/default
:
sudo nano /etc/nginx/sites-available/default
找到 server
部分,修改如下:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/your-project/public;
index index.php index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的 PHP 版本调整
}
location ~ /\.ht {
deny all;
}
}
保存并退出编辑器,然后测试 Nginx 配置:
sudo nginx -t
如果没有错误,重启 Nginx:
sudo systemctl restart nginx
编辑 Apache 配置文件 /etc/apache2/sites-available/000-default.conf
:
sudo nano /etc/apache2/sites-available/000-default.conf
找到 <VirtualHost *:80>
部分,修改如下:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/your-project/public
<Directory /var/www/your-project/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
保存并退出编辑器,然后启用 Apache 虚拟主机配置:
sudo a2ensite 000-default.conf
测试 Apache 配置:
sudo apachectl configtest
如果没有错误,重启 Apache:
sudo systemctl restart apache2
使用 Composer 创建一个新的 Laravel 项目:
composer create-project --prefer-dist laravel/laravel your-project-name
进入你的 Laravel 项目目录并配置 .env
文件:
cd /var/www/your-project
nano .env
填写数据库连接信息:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_username
DB_PASSWORD=your_database_password
在项目目录中运行 Composer 安装依赖项:
composer install
生成应用密钥:
php artisan key:generate
运行数据库迁移以创建表:
php artisan migrate
你可以使用 Postman 或其他 API 客户端来测试你的 Laravel API。例如,创建一个简单的 API 路由和控制器:
// routes/api.php
Route::get('/test', function () {
return response()->json(['message' => 'Hello, World!']);
});
然后访问 http://your-server-ip/api/test
来测试。
确保 Nginx 或 Apache 用户(通常是 www-data
)有权限访问你的 Laravel 项目目录和 storage
目录:
sudo chown -R www-data:www-data /var/www/your-project
sudo chmod -R 755 /var/www/your-project/storage
现在你已经成功在 Linux 上部署了一个 Laravel API。你可以继续开发和扩展你的应用。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。