当前位置: 首页>>技术教程>>正文


在Ubuntu 18.04 Bionic Beaver Linux上安装并托管Laravel

, ,

目的

在Ubuntu 18.04上使用Nginx和MariaDB安装Laravel

发行版

Ubuntu 18.04仿生海狸

要求

具有root特权的Ubuntu 18.04的有效安装

困难

简单

约定

  • -要求linux命令可以直接以root用户身份或通过使用root特权以root特权执行sudo命令
  • $-要求linux命令以普通非特权用户身份执行

介绍

Laravel很快成为顶级PHP框架的位置。它为PHP生态系统带来了在其他框架(如Rails)中发现的许多对开发人员友好的功能,从而实现了现代化的PHP开发。

如果您希望使用Laravel进行开发或将其托管在Ubuntu 18.04上,则设置过程从未如此简单。由于Laravel是PHP,因此有多种方法可以解决此问题,但是Nginx和MariaDB提供了一种相当简单的方法来使您的项目与现代production-ready工具一起运行。

安装软件包

在开始设置所有内容之前,您需要一些软件包。它们都可以在Ubuntu的存储库中找到,并且它们在Bionic中都相当新,因此没有理由去找别的地方。

$ sudo apt install composer php-mysql php-fpm php-mbstring php-tokenizer php-xml php-json php-common nginx mariadb-server

他们会投入更多,但这不会太糟。




创建您的Lavavel项目

接下来需要做的是启动Laravel项目。这也不是一件大事。您之前安装的Composer软件包几乎可以为您处理所有事情,并且可以立即为您提供功能性的Laravel安装。

首先将目录更改为您的/var/www/目录。由于Nginx将提供此服务,因此这是组织网站的最佳位置。

$ cd /var/www

接下来,使用Composer创建您的项目。末尾的名称是您的项目以及包含它的文件夹的名称。相应地选择它。

$ sudo composer create-project --prefer-dist laravel/laravel yourProject
Install Laravel With Composer On Ubuntu 18.04

在Ubuntu 18.04上安装带有Composer的Laravel

Composer将自动下载并安装所有PHP依赖关系以及Laravel并进行设置。在开始使用和服务项目之前,请更改Nginx的所有权。

$ sudo chown -R www-data:www-data yourProject

设置您的数据库

接下来,您将需要设置数据库。在开始添加任何内容之前,请确保服务器安全。

$ sudo mysql-secure-install

仔细检查,设置您的root密码,然后使用其安全默认值。现在,您可以登录MariaDB,并设置数据库以供Laravel使用。

$ sudo mysql -u root -p

进入后,首先创建数据库。

> CREATE DATABASE laravel;

然后,创建一个用户以使用该数据库。

> CREATE USER `user`@`localhost` IDENTIFIED BY 'yourpassword';

授予该用户使用该数据库的权限。

> GRANT ALL ON laravel.* TO `user`@`localhost`;

最后,清除特权并退出。

> FLUSH PRIVILEGES;


连接Laravel

默认情况下,Laravel配置为使用MySQL(MariaDB),但是您需要为其提供正确的信息以连接到刚刚设置的数据库。

Configure Laravel Database On Ubuntu 18.04

在Ubuntu 18.04上配置Laravel数据库

继续并转到安装Laravel的目录。您会看到一个config文件夹在那里。该文件夹内是一个数据库配置文件。打开config/database.php。向下滚动以找到MySQL块,如上图所示。更改数据库名称,用户名和密码,使其与您设置的名称相匹配。然后,保存并退出。

配置Nginx

难题的最后一部分是Nginx。这就是实际上将为您的网站提供服务的部分。变成/etc/nginx。在该文件夹中,您将找到Nginx的所有配置。您不需要弄乱任何东西。您可以在中调整选项nginx.conf如果您选择的话,但是不必让Laravel工作。

您需要注意两个文件夹。他们是sites-availabesites-enabledsites-available包含您所有的站点配置。要开始为网站提供服务,请在以下位置创建指向网站配置的软链接site-enabled。目前,只有一个条目。从两个文件夹中将其删除。然后,在中创建一个新条目sites-available为您的项目。

在文本编辑器中打开新的站点配置,并将其设置为类似于以下内容。

server {
    listen 80;
    listen [::]:80;
	server_name your-site.com

    root /var/www/yourProject;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

}

当一切都反映您的服务器时,保存并退出。现在,您可以重新启动Nginx以使更改生效。

$ sudo systemctl restart nginx

您可以浏览到您为Nginx指定的服务器名称以查看您的站点。

总结思想

Laravel非常强大,这种配置可以帮助您进行出色的开发设置或生产服务器的入门。当然,您可以使用Laravel和Nginx做更多的事情,因此随时可以在开发机器上探索不同的配置选项。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8995.html,未经允许,请勿转载。