在Linux环境中部署Laravel应用程序通常涉及以下步骤:
安装必要的软件:
配置Web服务器:
public目录。mod_rewrite模块,并配置.htaccess文件。设置文件权限:
storage和bootstrap/cache目录可写。安装Laravel:
配置环境变量:
.env文件中的环境变量,如数据库连接信息、APP_NAME等。运行迁移和种子:
php artisan migrate来创建数据库表。php artisan db:seed来填充初始数据。优化:
php artisan optimize来优化应用程序。下面是详细的步骤:
在Ubuntu上,你可以使用以下命令安装所需的软件:
sudo apt update
sudo apt install nginx php-fpm php-mysql composer
创建一个新的Nginx服务器块文件:
sudo nano /etc/nginx/sites-available/yourdomain.com
添加以下内容:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /path/to/your/laravel/project/public;
index index.php index.html index.htm;
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版本调整
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
启用配置:
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx
启用mod_rewrite:
sudo a2enmod rewrite
创建一个新的Apache虚拟主机文件:
sudo nano /etc/apache2/sites-available/yourdomain.com.conf
添加以下内容:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /path/to/your/laravel/project/public
<Directory /path/to/your/laravel/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>
启用配置:
sudo a2ensite yourdomain.com.conf
sudo systemctl restart apache2
sudo chown -R www-data:www-data /path/to/your/laravel/project
sudo chmod -R 755 /path/to/your/laravel/project/storage
sudo chmod -R 755 /path/to/your/laravel/project/bootstrap/cache
在项目目录中运行:
cd /path/to/your/laravel/project
composer install
复制.env.example文件并编辑.env:
cp .env.example .env
nano .env
填写数据库连接信息和其他必要的配置。
php artisan migrate
php artisan db:seed --class=YourSeederClass # 如果有自定义的Seeder
php artisan optimize
完成以上步骤后,你的Laravel应用程序应该已经在Linux服务器上成功部署并可以访问了。记得根据你的实际情况调整路径和配置。