在Linux上管理Laravel服务

发布时间:2024-11-28 17:45:22 作者:小樊
来源:亿速云 阅读:78

在 Linux 上管理 Laravel 服务可以通过以下几个步骤来实现:

  1. 安装 LAMP 或 LEMP 环境: Laravel 需要 PHP、Apache 或 Nginx、MySQL 和 PHP 扩展。你可以选择安装 LAMP(Linux, Apache, MySQL, PHP)或 LEMP(Linux, Nginx, MySQL, PHP)环境。以下是安装 LAMP 环境的简要步骤:

    • 更新系统软件包列表:

      sudo apt-get update
      
    • 安装 Apache:

      sudo apt-get install apache2
      
    • 安装 MySQL:

      sudo apt-get install mysql-server
      
    • 安装 PHP 和 PHP 扩展:

      sudo apt-get install php libapache2-mod-php php-mysql
      
    • 重启 Apache 服务:

      sudo systemctl restart apache2
      

    对于 LEMP 环境,你需要安装 Nginx 和 PHP-FPM,并将 Apache 的配置替换为 Nginx 的配置。以下是安装 LEMP 环境的简要步骤:

    • 安装 Nginx:

      sudo apt-get install nginx
      
    • 安装 MySQL:

      sudo apt-get install mysql-server
      
    • 安装 PHP 和 PHP 扩展:

      sudo apt-get install php-fpm php-mysql
      
    • 重启 Nginx 和 PHP-FPM 服务:

      sudo systemctl restart nginx
      sudo systemctl restart php7.x-fpm
      
  2. 部署 Laravel 项目: 将你的 Laravel 项目上传到服务器上的适当目录(例如 /var/www/html/usr/share/nginx/html),然后进入项目目录并运行以下命令:

    • 安装 Composer 依赖:

      composer install
      
    • .env.example 文件复制并重命名为 .env

      cp .env.example .env
      
    • 生成应用密钥:

      php artisan key:generate
      
    • 配置数据库连接信息: 编辑 .env 文件,填写正确的数据库连接信息。

    • 运行数据库迁移和数据填充(如果有):

      php artisan migrate
      php artisan db:seed
      
    • 更改文件夹权限:

      sudo chown -R www-data:www-data /path/to/your/laravel/project
      sudo chmod -R 755 /path/to/your/laravel/project/storage
      sudo chmod -R 755 /path/to/your/laravel/project/bootstrap/cache
      
  3. 配置 Web 服务器: 根据你选择的环境(Apache 或 Nginx),配置 Web 服务器以正确处理 Laravel 项目。以下是 Apache 和 Nginx 的配置示例:

    • Apache 配置示例(/etc/apache2/sites-available/your-project.conf):

      <VirtualHost *:80>
          ServerName your-domain.com
          DocumentRoot /path/to/your/laravel/project/public
      
          <Directory /path/to/your/laravel/project/public>
              AllowOverride All
              Require all granted
          </Directory>
      </VirtualHost>
      
    • Nginx 配置示例(/etc/nginx/sites-available/your-project):

      server {
          listen 80;
          server_name your-domain.com;
          root /path/to/your/laravel/project/public;
      
          add_header X-Frame-Options "SAMEORIGIN";
          add_header X-XSS-Protection "1; mode=block";
          add_header X-Content-Type-Options "nosniff";
      
          index index.html index.htm index.php;
      
          charset utf-8;
      
          location / {
              try_files $uri $uri/ /index.php?$query_string;
          }
      
          location = /favicon.ico { access_log off; log_not_found off; }
          location = /robots.txt  { access_log off; log_not_found off; }
      
          error_page 404 /index.php;
      
          location ~ \.php$ {
              fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
              fastcgi_index index.php;
              fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
              include fastcgi_params;
          }
      
          location ~ /\.(?!well-known).* {
              deny all;
          }
      }
      
    • 启用站点配置: 对于 Apache,运行 sudo a2ensite your-project.conf 并重启 Apache 服务。 对于 Nginx,运行 sudo ln -s /etc/nginx/sites-available/your-project /etc/nginx/sites-enabled 并重启 Nginx 服务。

  4. 管理 Laravel 服务: 现在你可以使用 php artisan 命令来管理你的 Laravel 项目,例如运行计划任务、队列工作等。你还可以使用诸如 PM2 等进程管理器来确保你的 Laravel 应用在后台持续运行。要安装 PM2,请运行 sudo npm install pm2 -g,然后使用 pm2 start 命令启动你的 Laravel 项目。

推荐阅读:
  1. Linux开启和关闭防火墙命令
  2. 如何实现linux块设备IO栈浅析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:使用Laravel命令行Linux

下一篇:管理服务Laravel在Linux

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》