宝塔面板部署laravel项目

  1. 建完服务器后,在服务器安全组中开放端口8888,888,443,80,20,21

  2. 远程连接服务器

    login: root
    password: (阿里云的登录密码或者会发到邮箱或手机上)

  3. 登录完成后,安装宝塔面板, 装完宝塔面板,会提示宝塔面板的登录地址以及账号密码

  4. 终端页面输入bt,可进行面板的操作

  5. 直接在网页地址栏输入面板地址,登录宝塔面板

  6. 装LNMP环境(速度慢…),确认好mysql版本

    之后执行migrate时可能报错:
    错误: 1071 specified key was too long
    处理:mysql 升级到5.7

  7. 从软件商店中找到php,设置:
    PHP 函数解禁 proc_open、symlink、putenv
    PHP 扩展安装 fileinfo、opcache、imagemagick、imap、exif、intl、xsl
    redis队列:1. 安装redis 2.启动redis redis-server
    队列-去除禁用函数:pcntl_signal,pcntl_alarm
    PHPINFO 内存不够安装方法:

    	登录ssh工具创建一个swap大小为1GB的空间,并设置开机启动以下为代码:
    	dd if=/dev/zero of=/swap bs=1024 count=1M
    	mkswap /swap
    	swapon /swap
    	echo "/swap swap swap sw 0 0" >> /etc/fstab
    

    PHP 并发方案调整

  8. 安装 Composer

  9. 远程连接服务器运行 git clone 项目HTTPS地址 本地项目目录

  10. 添加网站并设置运行根目录、配置伪静态、SSL证书、计划任务

git

sudo git config --global user.name “your name”
sudo git config --global user.email your_mail
sudo ssh-keygen -t rsa -C “your_mail”

github -> account-> -setting ssh

sudo git clone …

Laravel

修改Env环境文件
composer install
php artisan storage:link
chmod -R 777 storage
chmod -R 777 bootstrap/cache
composer update
composer dump-autoload

使用宝塔创建 uploads/images 下文件夹并设置可写(含uoloads)、上传正式服图片文件

添加服务器计划任务:
任务类型:shell脚本
脚本内容:php /www/wwwroot/your_project/artisan your_command

Ubuntu添加crontab
查看cron是crontab -l
设置cron是crontab -e
Laravel任务调度为* * * * * php /www/wwwroot/project/artisan schedule:run >> /dev/null 2>&1
用root账号执行的artisan生成的日志权限会有问题。

线上调优

  1. APP_DEBUG=false

  2. 缓存配置:
    php artisan config:clear
    php artisan config:cache

    cache后,读取不到env(‘foo’),只能通过config(‘foo’)

  3. 缓存路由:

    php artisan route:clear
    php artisan route:cache
    
    • 报错1:Unable to prepare route [/] for serialization. Uses Closure.
      改掉闭包的方式。
  4. 定时删日志

    // mtime 创建时间 +n n天前
    find /www/wwwroot/your_project/storage/logs/ -mtime +3 -name "*.log" -exec rm -rf {} \;
    
  5. 缩小js/css

    npm run production
    

你可能感兴趣的:(laravel,laravel,宝塔面板,部署)