Rocky Linux 8 安装 Laravel PHP 框架

Laravel 是一个专为 Web 应用程序开发而设计的开源 PHP 框架。 它建立在 Symfony 框架的各种组件之上,使 PHP Web 应用程序的编程变得更加容易。 它提供了一种有意义且创造性的语法,用于简化常见任务,例如身份验证、路由、会话、使用数据库等。 它使开发人员的开发过程变得简单,而不会影响程序功能。

在这篇文章中,我们将向我们展示 Rocky Linux 8 上安装 Laravel PHP 框架。

先决条件

  • 在 云平台上运行 RockyLinux 8 的服务器
  • 在我们的服务器上配置了 root 密码

第 1 步 – 创建 云服务器

首先,登录到我们的 云服务器。 创建一个新服务器,选择 Rocky Linux 8 作为至少 2GB RAM 的操作系统。 通过 SSH 连接到我们的云服务器并使用页面顶部突出显示的凭据登录。

登录到服务器后,运行以下命令以使用最新的可用软件包更新基本系统。

dnf update -y

第 2 步 – 安装 Nginx、MariaDB 和 PHP

首先,我们需要在我们的服务器上安装 Nginx Web 服务器、MariaDB 数据库服务器、PHP 和其他 PHP 扩展。 我们可以使用以下命令安装所有这些:

dnf install nginx mariadb-server php php-fpm php-common php-xml php-mbstring php-json php-zip php-mysqlnd curl unzip -y

安装完所有软件包后,使用以下命令启动并启用 Nginx、MariaDB 和 PHP-FPM 服务:

systemctl start php-fpm nginx mariadb
systemctl enable php-fpm nginx mariadb

接下来,我们需要编辑 PHP-FPM 配置文件并将用户和组从 apache 更改为 nginx。

nano /etc/php-fpm.d/www.conf

更改以下行:

listen.owner = nginx
listen.group = nginx

保存并关闭文件,然后编辑 php.ini 文件:

nano /etc/php.ini

更改以下行:

date.timezone = UTC
cgi.fix_pathinfo=1

保存并关闭文件,然后重新启动 PHP-FPM 服务以应用更改。

systemctl restart php-fpm

第 3 步 – 安装 Composer

Composer 是 PHP 的依赖管理器。 它用于安装项目所需的各种 PHP 依赖项。 我们可以使用以下命令安装它:

curl -sS https://getcomposer.org/installer | php

我们应该得到以下输出:

All settings correct for using Composer
Downloading...

Composer (version 2.1.6) successfully installed to: /root/composer.phar
Use it: php composer.phar

接下来,将下载的二进制文件移动到系统路径并设置适当的权限:

mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer

现在,使用以下命令验证 Composer 版本:

composer --version

我们应该得到以下输出:

Composer version 2.1.6 2021-08-19 17:11:08

第 4 步 – 安装 Laravel

首先,导航到 Nginx Web 根目录并使用以下命令下载最新版本的 Laravel:

cd /var/www/html/
composer create-project --prefer-dist laravel/laravel laravelsite

我们应该得到以下输出:

Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
76 packages we are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi
No publishable resources for tag [laravel-assets].
Publishing complete.
> @php artisan key:generate --ansi
Application key set successfully.

接下来,为 laravel 目录设置适当的权限和所有权:

chown -R nginx:nginx /var/www/html/laravelsite/storage/
chown -R nginx:nginx /var/www/html/laravelsite/bootstrap/cache/
chmod -R 0777 /var/www/html/laravelsite/storage/
chmod -R 0775 /var/www/html/laravelsite/bootstrap/cache/

第 5 步 – 为 Laravel 配置 Nginx

现在,我们需要创建一个 Nginx 虚拟主机配置文件来在 Internet 上托管 Laravel。

我们可以使用以下命令创建它:

nano /etc/nginx/conf.d/laravel.conf

添加以下行:

server {
       listen 80;
       server_name laravel.werdomain.com;
       root        /var/www/html/laravelsite/public;
       index       index.php;
       charset utf-8;
       gzip on;
	gzip_types text/css application/javascript text/javascript application/x-javascript  image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
        location / {
        	try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php {
                include fastcgi.conf;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php-fpm/www.sock;
        }
        location ~ /\.ht {
                deny all;
        }
}

保存并关闭文件,然后使用以下命令验证 Nginx 是否存在任何语法错误:

nginx -t

我们应该得到以下输出:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

最后,重新启动 Nginx 和 PHP-FPM 服务以应用更改:

systemctl restart php-fpm
systemctl restart nginx

我们还可以使用以下命令验证 Nginx 状态:

systemctl status nginx

我们应该看到以下输出:

● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/nginx.service.d
           └─php-fpm.conf
   Active: active (running) since Tue 2021-09-14 09:36:05 UTC; 4s ago
  Process: 17025 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 17023 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 17020 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 17026 (nginx)
    Tasks: 3 (limit: 23695)
   Memory: 5.0M
   CGroup: /system.slice/nginx.service
           ├─17026 nginx: master process /usr/sbin/nginx
           ├─17027 nginx: worker process
           └─17028 nginx: worker process

第 6 步 – 配置防火墙

如果防火墙已安装并在我们的服务器中运行,则我们需要允许 HTTP 和 HTTPS 服务通过防火墙。 我们可以使用以下命令同时允许这两种服务:

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https

接下来,重新加载 firewalld 以应用更改:

firewall-cmd --reload

第 7 步 – 访问 Laravel 仪表板

我们现在可以使用 URL http://laravel.werdomain.com 访问 Laravel 仪表板。 我们将被重定向到 Laravel 默认屏幕:
Laravel 仪表板页面

恭喜! 你已经在 Rocky Linux 8 上成功地安装了带有 Nginx 的 Laravel。你现在可以开始顺利地在这个框架上创建 PHP Web 应用程序了。 从 开始使用专用托管。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论