📜  如何在CentOS上安装Laravel(1)

📅  最后修改于: 2023-12-03 14:52:41.084000             🧑  作者: Mango

如何在CentOS上安装Laravel

Laravel是一款现代化的PHP Web开发框架,被广泛地使用于 web 应用程序开发中。在CentOS上进行Laravel安装是一件非常容易的事情,本文将介绍如何在CentOS上安装Laravel。

步骤一:安装必要的软件

在进行Laravel安装之前,需要先安装一些必要的软件:

sudo yum update
sudo yum install -y curl wget git gcc
sudo yum install -y epel-release
sudo yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y yum-utils
sudo yum-config-manager --enable remi-php74
sudo yum install -y php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd

代码解释:

  • yum update: 升级所有软件包到最新版本
  • yum install -y curl wget git gcc: 安装curl、wget、git和gcc等必要工具
  • yum install -y epel-release: 安装EPEL源
  • yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm: 安装Remi源(PHP7.4)
  • yum-utils:用于添加Remi源,便于后续的PHP安装。
  • yum-config-manager --enable remi-php74: 启用Remi源中的PHP7.4版本(如果需要其他版本可以替换PHP版本号)
  • yum install -y php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd: 安装PHP及其扩展
步骤二:安装Composer

Composer是一个PHP的包管理工具,也是Laravel的核心依赖。我们可以通过以下命令安装Composer:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

代码解释:

  • curl -sS https://getcomposer.org/installer | php:下载最新版本的Composer
  • sudo mv composer.phar /usr/local/bin/composer:移动Composer文件到可执行目录
步骤三:安装Laravel

使用Composer安装Laravel非常简单,只需要运行如下命令即可:

sudo composer global require "laravel/installer"

代码解释:

  • sudo composer global require "laravel/installer":全局安装Laravel
步骤四:创建新的Laravel项目

Laravel的安装完毕后,我们可以创建新的项目了。首先,我们需要进入到一个合适的目录,将会在这个目录中创建Laravel项目:

cd /var/www

然后,利用Laravel的CLI,我们可以快速创建一个新的Laravel项目,以我的博客为例:

laravel new laravel-blog

这里,我们创建了一个名为laravel-blog的Laravel项目。

代码解释:

  • cd /var/www:进入web目录,也可以根据自己的需要选择一个目录。
  • laravel new laravel-blog: 创建新的名为laravel-blog的Laravel项目。
步骤五:配置Web服务器

Laravel项目已经创建完毕,现在需要将其部署到Web服务器中,我们可以选择Apache或者Nginx。

Apache

对于Apache我们可以使用如下的配置文件:

<VirtualHost *:80>
    ServerName yourdomain.com
    ServerAdmin webmaster@yourdomain.com
    DocumentRoot /var/www/laravel-blog/public
    
    <Directory /var/www/laravel-blog/public>
        AllowOverride All
        Order Allow,Deny
        Allow from all
    </Directory>
    
    ErrorLog /var/log/httpd/laravel-error.log
    CustomLog /var/log/httpd/laravel-access.log combined
    
</VirtualHost>

注意修改ServerName和DocumentRoot路径。

然后重载Apache配置:

sudo systemctl restart httpd

代码解释:

  • ServerName: 网站的域名或者ip地址
  • DocumentRoot: Laravel程序的public目录的绝对路径
  • AllowOverride All: 允许使用 .htaccess 文件重新定义 Apache 的设置
  • Order Allow,Deny: 允许客户端访问
  • Allow from all: 允许所有的来源IP都可以访问该目录
  • ErrorLog: 错误日志文件的绝对路径
  • CustomLog: 重定向日志文件。当客户端与 web 服务器建立连接时,服务器就产生日志,记录有关该连接的信息。
Nginx

对于Nginx,我们可以在 /etc/nginx/sites-available/ 目录中创建一个新的配置文件,比如:

server {
    listen 80;
    server_name yourdomain.com;
    root /var/www/laravel-blog/public;

    index index.php index.html;

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

    location ~ \.php$ {
        try_files       $uri /index.php =404;
        fastcgi_pass    unix:/run/php-fpm/www.sock;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }
}

重载Nginx编写的配置文件:

sudo ln -s /etc/nginx/sites-available/laravel-blog /etc/nginx/sites-enabled/
sudo systemctl restart nginx

代码解释:

  • listen: 监听端口号
  • server_name: 网站的域名或者ip地址
  • root: Laravel程序的public目录的绝对路径
  • location /: 设置文件请求的转发规则
  • location ~ \.php$: 将 .php 请求转发到PHP-FPM解释器,同时将SCRIPT_FILENAME变量设置为/index.php是为了保证Laravel的路由可以被正常解析。
  • fastcgi_pass: fastcgi服务的监听地址
  • fastcgi_param: 设置传递给 FastCGI服务器的参数,SCRIPT_FILENAME :指定被解释的PHP脚本。
  • include fastcgi_params: 引入更多的FastCGI参数,比如fastcgi_param SCRIPT_FILENAME。

现在,您已经可以访问 http://yourdomain.com ,来查看您的新创建的Laravel项目了。

总结

本文章介绍了如何在CentOS上安装Laravel,并且简单介绍了Laravel的配置部署。在此基础上,你可以轻松的进行Web开发。