Bläddra i källkod

优化docker版本上传限制的问题

kuaifan 4 år sedan
förälder
incheckning
cd3f924045
35 ändrade filer med 2015 tillägg och 20 borttagningar
  1. 17 3
      app/Http/Controllers/Api/ChatController.php
  2. 17 3
      app/Http/Controllers/Api/ProjectController.php
  3. 1 1
      app/Module/Base.php
  4. 2 2
      config/laravels.php
  5. 2 1
      docker-compose.yml
  6. 1947 0
      docker/php.ini
  7. 2 0
      docker/site.conf
  8. 1 1
      resources/assets/js/main/components/ImgUpload.vue
  9. 2 2
      resources/assets/js/main/components/MDEditor/index.vue
  10. 2 2
      resources/assets/js/main/components/TEditor.vue
  11. 2 2
      resources/assets/js/main/components/chat/Upload.vue
  12. 20 3
      resources/assets/js/main/components/project/task/files.vue
  13. BIN
      resources/assets/statics/public/images/files/ai.png
  14. BIN
      resources/assets/statics/public/images/files/avi.png
  15. BIN
      resources/assets/statics/public/images/files/bmp.png
  16. BIN
      resources/assets/statics/public/images/files/cdr.png
  17. BIN
      resources/assets/statics/public/images/files/doc.png
  18. BIN
      resources/assets/statics/public/images/files/eps.png
  19. BIN
      resources/assets/statics/public/images/files/exe.png
  20. BIN
      resources/assets/statics/public/images/files/file.png
  21. BIN
      resources/assets/statics/public/images/files/gif.png
  22. BIN
      resources/assets/statics/public/images/files/html.png
  23. BIN
      resources/assets/statics/public/images/files/mov.png
  24. BIN
      resources/assets/statics/public/images/files/mp3.png
  25. BIN
      resources/assets/statics/public/images/files/mp4.png
  26. BIN
      resources/assets/statics/public/images/files/pdf.png
  27. BIN
      resources/assets/statics/public/images/files/ppt.png
  28. BIN
      resources/assets/statics/public/images/files/pr.png
  29. BIN
      resources/assets/statics/public/images/files/psd.png
  30. BIN
      resources/assets/statics/public/images/files/rar.png
  31. BIN
      resources/assets/statics/public/images/files/svg.png
  32. BIN
      resources/assets/statics/public/images/files/tif.png
  33. BIN
      resources/assets/statics/public/images/files/txt.png
  34. BIN
      resources/assets/statics/public/images/files/xls.png
  35. BIN
      resources/assets/statics/public/images/files/zip.png

+ 17 - 3
app/Http/Controllers/Api/ChatController.php

@@ -217,12 +217,26 @@ class ChatController extends Controller
                 case "pptx":
                     $fileData['thumb'] = 'images/files/ppt.png';
                     break;
+                case "ai":
+                case "avi":
+                case "bmp":
+                case "cdr":
                 case "doc":
-                case "xls":
+                case "eps":
+                case "gif":
+                case "mov":
+                case "mp3":
+                case "mp4":
+                case "pdf":
                 case "ppt":
+                case "pr":
+                case "psd":
+                case "rar":
+                case "svg":
+                case "tif":
                 case "txt":
-                case "esp":
-                case "gif":
+                case "xls":
+                case "zip":
                     $fileData['thumb'] = 'images/files/' . $fileData['ext'] . '.png';
                     break;
             }

+ 17 - 3
app/Http/Controllers/Api/ProjectController.php

@@ -2482,12 +2482,26 @@ class ProjectController extends Controller
                 case "pptx":
                     $fileData['thumb'] = 'images/files/ppt.png';
                     break;
+                case "ai":
+                case "avi":
+                case "bmp":
+                case "cdr":
                 case "doc":
-                case "xls":
+                case "eps":
+                case "gif":
+                case "mov":
+                case "mp3":
+                case "mp4":
+                case "pdf":
                 case "ppt":
+                case "pr":
+                case "psd":
+                case "rar":
+                case "svg":
+                case "tif":
                 case "txt":
-                case "esp":
-                case "gif":
+                case "xls":
+                case "zip":
                     $fileData['thumb'] = 'images/files/' . $fileData['ext'] . '.png';
                     break;
             }

+ 1 - 1
app/Module/Base.php

@@ -2085,7 +2085,7 @@ class Base
                     $type = ['zip'];
                     break;
                 case 'file':
-                    $type = ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz'];
+                    $type = ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz', 'ai', 'avi', 'bmp', 'cdr', 'eps', 'mov', 'mp3', 'mp4', 'pr', 'psd', 'svg', 'tif'];
                     break;
                 default:
                     return Base::retError('错误的类型参数');

+ 2 - 2
config/laravels.php

@@ -73,9 +73,9 @@ return [
         'log_file'           => storage_path(sprintf('logs/swoole-%s.log', date('Y-m'))),
         'log_level'          => 4,
         'document_root'      => base_path('public'),
-        'buffer_output_size' => 50 * 1024 * 1024,
+        'buffer_output_size' => 200 * 1024 * 1024,
         'socket_buffer_size' => 256 * 1024 * 1024,
-        'package_max_length' => 100 * 1024 * 1024,
+        'package_max_length' => 200 * 1024 * 1024,
         'reload_async'       => true,
         'max_wait_time'      => 60,
         'enable_reuse_port'  => true,

+ 2 - 1
docker-compose.yml

@@ -8,7 +8,7 @@ services:
       - "${APP_PORT_SSL}:443"
     volumes:
       - ./docker/site.conf:/etc/nginx/conf.d/default.conf
-      - ./:/var/www
+      - ./public:/var/www/public
     links:
       - php
     depends_on:
@@ -23,6 +23,7 @@ services:
     volumes:
       - ./docker/wookteam.conf:/etc/supervisor/conf.d/wookteam.conf
       - ./docker/log/supervisor:/var/log/supervisor
+      - ./docker/php.ini:/usr/local/etc/php/php.ini
       - ./:/var/www
     environment:
       TZ: "Asia/Shanghai"

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 1947 - 0
docker/php.ini


+ 2 - 0
docker/site.conf

@@ -16,6 +16,8 @@ server {
     server_name wookteam.com;
     root /var/www/public;
 
+    client_max_body_size  200m;
+
     autoindex off;
     index index.html index.htm index.php;
 

+ 1 - 1
resources/assets/js/main/components/ImgUpload.vue

@@ -341,7 +341,7 @@
                 maxNum: Math.min(Math.max($A.runNum(this.num), 1), 99),
                 httpValue: '',
                 httpType: '',
-                maxSize: 2048
+                maxSize: 204800
             }
         },
         mounted () {

+ 2 - 2
resources/assets/js/main/components/MDEditor/index.vue

@@ -139,10 +139,10 @@
                 htmlValue: '',
 
                 uploadIng: 0,
-                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz'],
+                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz', 'ai', 'avi', 'bmp', 'cdr', 'eps', 'mov', 'mp3', 'mp4', 'pr', 'psd', 'svg', 'tif'],
                 actionUrl: $A.apiUrl('system/fileupload'),
                 params: { token: $A.getToken() },
-                maxSize: 10240
+                maxSize: 204800
             };
         },
         mounted() {

+ 2 - 2
resources/assets/js/main/components/TEditor.vue

@@ -198,10 +198,10 @@
                 transfer: false,
 
                 uploadIng: 0,
-                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz'],
+                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz', 'ai', 'avi', 'bmp', 'cdr', 'eps', 'mov', 'mp3', 'mp4', 'pr', 'psd', 'svg', 'tif'],
                 actionUrl: $A.apiUrl('system/fileupload'),
                 params: { token: $A.getToken() },
-                maxSize: 10240
+                maxSize: 204800
             };
         },
         mounted() {

+ 2 - 2
resources/assets/js/main/components/chat/Upload.vue

@@ -25,13 +25,13 @@ export default {
         },
         maxSize: {
             type: Number,
-            default: 10240
+            default: 204800
         }
     },
 
     data() {
         return {
-            uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz'],
+            uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz', 'ai', 'avi', 'bmp', 'cdr', 'eps', 'mov', 'mp3', 'mp4', 'pr', 'psd', 'svg', 'tif'],
             actionUrl: $A.apiUrl('chat/files/upload'),
             params: {
                 username: this.target,

+ 20 - 3
resources/assets/js/main/components/project/task/files.vue

@@ -32,6 +32,7 @@
                     :show-upload-list="false"
                     :max-size="maxSize"
                     :on-success="handleSuccess"
+                    :on-error="handleError"
                     :on-format-error="handleFormatError"
                     :on-exceeded-size="handleMaxSize"
                     :before-upload="handleBeforeUpload">
@@ -100,7 +101,7 @@
                 lastPage: 0,
                 noDataText: "",
 
-                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz'],
+                uploadFormat: ['jpg', 'jpeg', 'png', 'gif', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt', 'esp', 'pdf', 'rar', 'zip', 'gz', 'ai', 'avi', 'bmp', 'cdr', 'eps', 'mov', 'mp3', 'mp4', 'pr', 'psd', 'svg', 'tif'],
                 actionUrl: $A.apiUrl('project/files/upload'),
                 params: {
                     token: $A.getToken(),
@@ -108,7 +109,7 @@
                     projectid: this.projectid
                 },
                 uploadList: [],
-                maxSize: 10240
+                maxSize: 204800
             }
         },
 
@@ -216,7 +217,7 @@
                                     marginTop: '-3px'
                                 },
                                 props: {
-                                    percent: params.row.percentage || 100,
+                                    percent: parseFloat($A.runNum(params.row.percentage || 100, 2)),
                                 },
                             }));
                         }
@@ -509,6 +510,22 @@
                 this.$refs.upload.handleClick();
             },
 
+            handleError (error, html, file) {
+                //上传失败
+                this.$Modal.warning({
+                    title: this.$L('上传失败'),
+                    content: this.$L('文件 % 上传失败,%', file.name, error)
+                });
+                this.$refs.upload.fileList.pop();
+                this.lists.some((item, index) => {
+                    if (item.uid == file.uid) {
+                        this.lists.splice(index, 1);
+                        return true;
+                    }
+                });
+                this.$emit('change', 'error');
+            },
+
             handleSuccess (res, file) {
                 //上传完成
                 if (res.ret === 1) {

BIN
resources/assets/statics/public/images/files/ai.png


BIN
resources/assets/statics/public/images/files/avi.png


BIN
resources/assets/statics/public/images/files/bmp.png


BIN
resources/assets/statics/public/images/files/cdr.png


BIN
resources/assets/statics/public/images/files/doc.png


BIN
resources/assets/statics/public/images/files/eps.png


BIN
resources/assets/statics/public/images/files/exe.png


BIN
resources/assets/statics/public/images/files/file.png


BIN
resources/assets/statics/public/images/files/gif.png


BIN
resources/assets/statics/public/images/files/html.png


BIN
resources/assets/statics/public/images/files/mov.png


BIN
resources/assets/statics/public/images/files/mp3.png


BIN
resources/assets/statics/public/images/files/mp4.png


BIN
resources/assets/statics/public/images/files/pdf.png


BIN
resources/assets/statics/public/images/files/ppt.png


BIN
resources/assets/statics/public/images/files/pr.png


BIN
resources/assets/statics/public/images/files/psd.png


BIN
resources/assets/statics/public/images/files/rar.png


BIN
resources/assets/statics/public/images/files/svg.png


BIN
resources/assets/statics/public/images/files/tif.png


BIN
resources/assets/statics/public/images/files/txt.png


BIN
resources/assets/statics/public/images/files/xls.png


BIN
resources/assets/statics/public/images/files/zip.png