Hướng dẫn dùng encrypted storage trong PHP
Lời nói đầuGần đây, mình có gặp một bài toán mà mình nghĩ rằng nó là một bài toán rất thường gặp của các nhà phát triển Web. Trong một project
Mình đã tìm kiếm một thư viện hay giải pháp nào đó để giải quyết vấn đề này và đẵ có câu trả lời trên
stackoverflow và sử dụng php để hiện thực hóa giải pháp mà Mình đã quyết định tạo một package được thiết kết cho các project Mình gọi đó là package Hướng dẫn.Trong bài hướng dẫn này, mình sẽ trình bày tất các bước bạn cần để mà hóa 1 file kích thước lớn trong 1 project mới của laravel . Đầu tiên, hiển nhiên rồi bạn cần tạo một project mới và chúng ta sẽ gọi nó là
Tại thời điểm viết bài này , chúng ta sử dụng Bởi vì mình đã sử dụng
Bời vì mình sử dụng
Laravel Valet, nên mình đã được auto tạo ra domain ok, tiếp sau đó chúng ta cài đặt
Và mình sẽ dùng
Và cuối cùng là compile tất cả mọi thứ vừa setup :
Và đương nhiên ta cũng không thể quên việc config
database trong
ok, đến hiện tại chũng ta có thể khởi tạo người dùng và đăng nhập để vào user dashboard . Note: Mục đích của bài viết này chỉ là demo nên mình sẽ khởi tạo form đơn giản cho việc upload file nhưng trong app của bạn , bạn nên quan tâm để việc sử dụng một cách tinh tế hơn upload function. Với những file quá lớn, bạn có thể suy nghĩ đển giải phải chia nhỏ file và upload lên server. Một package rất tốt (theo quan điểm của bản thân mình) bạn có thể sư dụng cho vấn đề này đó là pion/laravel-chunk-upload.
Việc của chúng ta hiện tại là edit file view
Giờ thì khởi tạo route nào :
Và tạo method mới bên trong
Đây chính là nơi mà chúng ta cần đển mã hóa file mà user đã tải lên . Nào hãy cùng lấy package
Package này sẽ cho phép truy cập vào Chúng ta sẽ sử dụng phương thức Nếu bạn muốn custom lại tên file thì bạn chỉ cần truyển thêm 1 tham số đầu vào để miêu tả lại tên mà bạn file sẽ được nhận vào Hiện tại thì method
Tiếp theo, chúng ta cần tim cách để giai mã và download được các file đã upload lên server nhé. Việc đầu tiên cần khởi tạo route
Phương thức ok, vậy là bây giờ chúng ta đã có thể mã hóa một cách rất đơn giản và thuậ tiện rồi. Chúng ta đã vừa hoàn thành việc tạo form cho user uipload, mã hóa file và giải mã chúng khi user yêu cầu download lại file mà bản thân từng tài lên. Đương nhiên trong các project production chúng ta cần thêm các yếu tổ bảo mật. Và Nếu bạn thích bài viết này và muốn tìm hiểu thêm về cách tải lên và mã hóa tệp bằng Amazon S3, bạn có thể truy cập một bài viết khác mà tôi đã viết: How to encrypt and upload large files to Amazon S3 in Laravel. Nguồnhttps://medium.com/better-programming/how-to-encrypt-large-files-in-laravel-293460836ded |