Laravel 是世界上最流行、免费、开源的 PHP 框架,以其富有表现力和优雅的语法而闻名。Laravel 易于访问、功能强大,并提供大型、健壮和现代应用程序所需的一些最佳 Web 开发工具。
在本文中,您将学习如何在Nginx Web服务器上运行的Ubuntu 20.04服务器上安装Laravel PHP 框架。
先决条件
- 如何在 Ubuntu 20.04 中使用 PhpMyAdmin 安装 LEMP Stack
第 1 步:安装所需的 PHP 模块
按照上面链接中的指南所述在Ubuntu 20.04服务器上设置LEMP堆栈后,您需要安装 Laravel 所需的其他 PHP 扩展,如下所示:
$ sudo apt 更新 $ sudo apt php-common php-json php-mbstring php-zip php-xml php-tokenizer
![](https://www.alaica.com/wp-content/uploads/linux-937.png)
第 2 步:为 Laravel 创建数据库
接下来,您需要为Laravel应用程序创建一个MySQL数据库。因此,登录到mysql shell 并按如下方式创建数据库。
$ sudo mysql MariaDB [(无)]>创建数据库 laraveldb; MariaDB [(none)]>将 laraveldb.* 上的所有内容授予由“example”标识的“webmaster”@“localhost”; MariaDB [(无)]>刷新权限; MariaDB [(无)]>退出
![](https://www.alaica.com/wp-content/uploads/linux-938.png)
步骤3:在Ubuntu 20.04中安装Composer
Laravel使用Composer ( PHP的依赖管理器)来管理其依赖项。因此,在使用Laravel之前,请确保您的系统上安装了Composer,如图所示。
$curl -sS https://getcomposer.org/installer | php $ sudo mvcomposer.phar /usr/local/bin/composer $ sudo chmod +x /usr/local/bin/composer
![](https://www.alaica.com/wp-content/uploads/linux-939.png)
第四步:在 Ubuntu 20.04 中安装 Laravel
安装Composer后,使用它来安装Laravel文件。进入/var/www/html
存储 Web 文件的目录,然后使用 Composer安装Laravel,如图所示。请记住替换example.com
为存储 Laravel 文件的目录名称。
$ cd /var/www/html $composer create-project --prefer-dist laravel/laravel example.com
![](https://www.alaica.com/wp-content/uploads/linux-940.png)
/var/www/html/example.com/publics
.第5步:在Ubuntu 20.04中配置Laravel
要列出新Laravel安装的内容,请运行以下ls 命令。你会注意到一个.env
file has been automatically created, which in the past, would have to be manually created.
$ ls -la /var/www/html/example.com/
![](https://www.alaica.com/wp-content/uploads/linux-941.png)
接下来,对Laravel目录设置适当的权限,如下所示。
$ sudo chown -R :www-data /var/www/html/example.com/storage/ $ sudo chown -R :www-data /var/www/html/example.com/bootstrap/cache/ $ sudo chmod -R 0777 /var/www/html/example.com/storage/ $ sudo chmod -R 0775 /var/www/html/example.com/bootstrap/cache/
接下来,Laravel 使用应用程序密钥来保护用户会话和其他加密数据。默认.env
包含一个默认的应用程序密钥,但出于安全目的,您需要为 Laravel 部署生成一个新的应用程序密钥。
$ sudo php artisan 密钥:生成
生成的密钥将.env
作为APP_KEY
. 您可以使用grep 命令查看附加的密钥。
$ grep -i APP_Key /var/www/html/example.com/.env
![](https://www.alaica.com/wp-content/uploads/linux-942.png)
您还需要配置Laravel数据库连接详细信息,.env
如以下屏幕截图所示。
$ sudo nano /var/www/html/example.com/.env
![](https://www.alaica.com/wp-content/uploads/linux-943.png)
第 6 步:配置 NGINX 来为 Laravel 应用程序提供服务
为了让NGINX为您的新应用程序提供服务,您需要在 NGINX 配置中的目录下为其创建一个服务器块/etc/nginx/sites-available/
。
$ sudo nano /etc/nginx/sites-available/example.com.conf
在下面的配置中,将 root 指令更新为 Laravel 应用程序的公共目录,并确保替换www.example.com
为您网站的域名,如图所示。
另外,设置fastcgi_pass
指令应指向PHP-FPM正在侦听请求的介质(例如fastcgi_pass unix:/run/php/php7.4-fpm.sock
):
服务器{ 服务器名称www.example.com; 根 /var/www/html/example.com/public; 索引index.php; 字符集utf-8; gzip 打开; gzip_types 文本/css 应用程序/javascript 文本/javascript 应用程序/x-javascript 图像/svg+xml 文本/纯文本/xsd 文本/xsl 文本/xml 图像/x-图标; 地点 / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php { 包含 fastcgi.conf; fastcgi_split_path_info ^(.+.php)(/.+)$; fastcgi_pass unix:/run/php/php7.4-fpm.sock; } 位置 ~ /.ht { 否认一切; } }
保存文件,然后通过创建指向/etc/nginx/sites-available/example.com.conf
该/etc/nginx/sites-enabled/
目录的链接来启用 Laravel 站点配置。此外,删除默认的服务器块配置。
$ sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/ $ sudo rm /etc/nginx/sites-enabled/default
接下来,在重新启动服务之前运行以下命令来检查NGINX配置语法是否正确。
$ sudo nginx -t $ sudo systemctl 重新启动 nginx
第 7 步:从 Web 浏览器访问 Laravel 应用程序
在此阶段,您需要测试您的Laravel部署是否正常工作以及是否可以从浏览器访问。要使用虚拟域 ,example.com
让我们使用/etc/hosts
本地计算机上的文件来创建本地 DNS。
运行以下命令获取 Laravel 服务器的 IP 地址并将其添加到文件中/etc/hosts
(根据您的设置替换该值)。
$ ip ad
$ echo “192.168.56.11 example.com”| sudo tee -a /etc/hosts sudo tee -a /etc/hosts
现在在本地计算机上打开网络浏览器并使用以下地址进行导航。
http://www.example.com/
![](https://www.alaica.com/wp-content/uploads/linux-944.png)
现在您已经安装了Laravel,您可以开始构建您的 Web 应用程序或网站。有关更多信息,请参阅Laravel 文档。