117.info
人生若只如初见

centos如何部署laravel项目

在CentOS上部署Laravel项目需要以下几个步骤:

  1. 安装必要的软件包

首先,确保已经安装了以下软件包:

  • PHP(7.2或更高版本)
  • Composer(PHP依赖管理工具)
  • Nginx或Apache(Web服务器)
  • MySQL或PostgreSQL(数据库服务器)

可以使用以下命令安装这些软件包:

sudo yum update sudo yum install epel-release sudo yum install php php-mysqlnd php-pdo php-mbstring php-xml php-pear php-bcmath php-gd php-mcrypt php-zip nginx 
  1. 安装Node.js和npm(可选)

如果你的Laravel项目使用了前端构建工具(如Webpack),则需要安装Node.js和npm:

curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash - sudo yum install -y nodejs 
  1. 安装Laravel

使用Composer全局安装Laravel安装程序:

sudo composer global require laravel/installer 

将Composer的全局二进制文件目录添加到系统的PATH中。编辑~/.bashrc~/.bash_profile文件,添加以下行:

export PATH="$HOME/.composer/vendor/bin:$PATH" 

保存文件并运行source ~/.bashrcsource ~/.bash_profile使更改生效。

  1. 配置Web服务器

根据你选择的Web服务器(Nginx或Apache),按照以下步骤配置:

  • Nginx:创建一个新的Nginx配置文件(例如/etc/nginx/conf.d/laravel.conf),并添加以下内容:
server { listen 80; server_name example.com; # 替换为你的域名或公网IP root /path/to/your/laravel/project; # 替换为你的Laravel项目路径 index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass unix:/tmp/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; } location ~ /\.ht { deny all; } } 
  • Apache:启用mod_rewrite模块并创建一个新的Apache配置文件(例如/etc/httpd/conf.d/laravel.conf),添加以下内容:
 ServerName example.com # 替换为你的域名或公网IP DocumentRoot /path/to/your/laravel/project # 替换为你的Laravel项目路径  AllowOverride All Require all granted  ErrorLog ${APACHE_LOG_DIR}/laravel_error.log CustomLog ${APACHE_LOG_DIR}/laravel_access.log combined  
  1. 设置文件权限

确保Laravel项目的storagebootstrap/cache目录具有可写权限:

sudo chown -R nginx:nginx /path/to/your/laravel/project sudo chmod -R 755 /path/to/your/laravel/project sudo chmod -R 777 /path/to/your/laravel/project/storage sudo chmod -R 777 /path/to/your/laravel/project/bootstrap/cache 
  1. 重启Web服务器

对于Nginx:

sudo systemctl restart nginx 

对于Apache:

sudo systemctl restart httpd 
  1. 运行Laravel项目

使用Laravel安装程序创建一个新的应用密钥:

laravel new-key 

.env.example文件复制到.env并编辑以配置数据库连接和其他设置:

cp .env.example .env nano .env 

运行以下命令生成应用程序密钥:

php artisan key:generate 

最后,运行以下命令优化Laravel应用程序:

php artisan config:cache php artisan route:cache php artisan view:cache 

现在,你的Laravel项目应该已经在CentOS上成功部署并可以访问了。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe7c4AzsNBAVRBFQ.html

推荐文章

  • CentOS Java应用连接数据库失败怎么办

    当在CentOS上使用Java应用连接数据库失败时,可以按照以下步骤进行排查和解决: 检查数据库连接配置: 确保数据库URL、用户名和密码等配置正确。例如,对于MySQL...

  • centos ftpserver日志在哪查看

    在CentOS系统中,FTP服务器的日志文件通常位于/var/log/目录下。具体来说,FTP服务器的日志文件可能包括以下几种: vsftpd日志: 如果你使用的是vsftpd作为FTP服...

  • 如何在CentOS上搭建GitLab CI/CD

    在CentOS上搭建GitLab CI/CD需要以下几个步骤:
    1. 安装GitLab
    首先,你需要在CentOS上安装GitLab。你可以选择使用官方的安装脚本或者Docker来安装。<...

  • CentOS sniffer如何进行实时监控

    在CentOS系统上,可以使用tcpdump工具进行实时网络监控。tcpdump是一个强大的命令行网络分析工具,能够捕获并显示经过指定网络接口的数据包。以下是使用tcpdump进...

  • Linux FTP服务器端口如何配置

    在Linux系统中配置FTP服务器端口,通常涉及修改FTP服务器的配置文件。以下是使用vsftpd(Very Secure FTP Daemon)作为FTP服务器的示例步骤:
    1. 安装vsftp...

  • Debian下cxImage如何批量处理图片

    在Debian系统下,使用cxImage库批量处理图片可以通过编写一个简单的脚本来实现。以下是一个基本的步骤指南: 安装cxImage库:
    确保你已经安装了cxImage库。...

  • Ubuntu上Swagger文档如何生成

    在Ubuntu上生成Swagger文档,通常需要以下几个步骤:
    1. 安装Swagger工具
    首先,你需要安装Swagger UI和Swagger Editor。可以使用npm(Node.js的包管理...

  • ubuntu iptables怎样实现透明代理

    在Ubuntu上使用iptables实现透明代理,通常需要以下几个步骤: 安装必要的软件包:
    你需要安装iptables和redsocks(或其他透明代理软件)。
    sudo apt ...