Ubuntu部署tp项目和部署定时任务

1.前提是: 使用的是阿里云的Ubuntu镜像的服务器,系统搭建了lnmp环境,这个不多说网上教程找。。
nginx服务使用的时发行版本的,php使用php7.1.33, (sudo service php7.1-fpm restart
重启php-fpm的方法)
在nginix.conf配置下打开一项扩展配置,这样就不用都在nginx里去配置项目了,

在这里插入图片描述
这样会自动加载sites-enabled下的所有项目配置。。。。

开始部署:

把项目通过xshell或者putty等其他方式上传到/var/www/目录下,然后composer intsall…
配置nginx, 如果正式服务器也有138.rk.com这个域名的话,去解析下就可以,
本地测试现在host文件下添加

cd /etc/nginx/sites-available
vim  138.rk.com

复制一下内容:

server{
            listen 80;
            root /var/www/xxx/; //xxx--项目名
            index index.html index.php;  //加载文件顺序
            server_name 138.rk.com;//虚拟域名
            client_max_body_size 200m;
            location / {
			//伪静态
               if (!-e $request_filename) {
                        rewrite ^(.*)$ /index.php?s=$1 last;
                         #rewrite  ^(.*)$  /index.php/?/$1  last;
                         break;
                }
                 index  index.html index.htm index.php;
                try_files $uri $uri/ /index.php?$args;
                add_header Access-Control-Allow-Origin *;
                add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
                add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,token,secretKey,ApiKey';

         }

            location ~ \.php$ {
            fastcgi_pass unix:/run/php/php7.1-fpm.sock;
            include snippets/fastcgi-php.conf;
            add_header Access-Control-Allow-Origin *;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
            add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,token,secretKey,ApiKey';

        }
        access_log /var/log/nginx/api_access.log;
        error_log /var/log/nginx/api_error.log;

}

配置完成后保存。。。。 Esc Ctrl+zz 快捷键
然后软连到/etc/nginx/sites-enabled

 ln -s /etc/nginx/sites-available/138.rk.com  /etc/nginx/sites-enabled/138.rk.com
 nginx -t //测试
 service nginx restart//重启

2.导入数据库

选择数据库 source +sql文件路径 导入即可

先给项目中需要的操作权限给到指定文件夹
chmod -R 777 thinkphp/
runtime也给下 如果项目使用了缓存

查看下项目扩展是否开启

php -m

没有的话安装需要的扩展即可

如果项目跑起来了

部署下定时任务即可。。。。

我这里使用的sh文件

30  7  * * *  bash /var/www/xxx/crond.sh >> /tmp/crm.log 2>&1 

service cron restart
#!/bin/bash
PATH=/usr/local/php/bin:/opt/someApp/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
cd /var/www/xxx&&php think Task

这样开发好的任务就可以定时去执行了

定时任务开发可以参考 定时任务开发

发布了31 篇原创文章 · 获赞 6 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章