Giới thiệu về source code Image Converter
Trình chuyển đổi hình ảnh trực tuyến này là một script PHP có thể chuyển đổi hình ảnh từ nhiều định dạng sang AI, APNG, AVIF, BMP, DDS, DIB, EPS, GIF, HDR, HEIC, HEIF, ICO, JP2, JPE, JPEG, PDF, PNG, PSD, RAW, SVG, TGA, TIFF, WBMP và WEBP.
Các hình ảnh cũ sẽ bị xóa khỏi máy chủ sau mỗi lần tải lên mới sau một số giờ cố định có thể được thiết lập từ bảng điều khiển.
QUAN TRỌNG:
Các định dạng được hỗ trợ mặc định phụ thuộc hoàn toàn vào máy chủ lưu trữ của bạn. Trên lưu trữ chia sẻ, bạn bị mắc kẹt với những gì lưu trữ của bạn cung cấp vì bạn không có quyền truy cập SSH vào máy chủ. Tuy nhiên, trên VPS, bạn có toàn quyền kiểm soát máy chủ và khả năng cài đặt bất kỳ thư viện cần thiết nào để hỗ trợ nhiều định dạng hơn.
Đối với tập lệnh này, tôi khuyên bạn nên sử dụng Ubuntu 22.04 trở lên. Trong tài liệu, tôi đã bao gồm một phần sẽ hướng dẫn bạn cài đặt bất kỳ thư viện cần thiết nào để hỗ trợ định dạng 100%. Trên thực tế, ứng dụng demo đang chạy trên máy chủ Ubuntu 22.04.
CentOS 7 cũng thường được sử dụng trong lưu trữ VPS. Nhưng nó đã lỗi thời và thiếu hỗ trợ cho một số định dạng. Cài đặt các gói cập nhật trên CentOS 7 thường yêu cầu kho lưu trữ RPM của Remi. Tôi không khuyên dùng hệ điều hành này cho tập lệnh này nhưng nếu bạn biết mình đang làm gì, bạn có thể cài đặt các thư viện cần thiết cho các định dạng không được hỗ trợ.
Tôi cũng đã thêm tùy chọn để bật hoặc tắt bất kỳ trình chuyển đổi nào từ bảng điều khiển. Vì vậy, nếu bất kỳ định dạng nào không được hỗ trợ, bạn có thể vô hiệu hóa trình chuyển đổi liên quan.
Các tính năng:
-
PHP 8.1
-
Admin Panel
-
Được xây dựng với Laravel 10 và Tailwindcss
-
Không sử dụng JQuery
-
Không cần kỹ năng lập trình
-
Tích hợp sẵn trình tạo Sitemap
-
Bao gồm Cookie Consent để tuân thủ GDPR & CCPA
-
Hoạt động trên cả share hosting và VPS
-
Tối ưu hóa hoàn toàn cho di động, máy tính để bàn hoặc máy tính bảng
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
Yêu cầu
Tập lệnh này được xây dựng bằng Laravel 10, vì vậy bạn có thể kiểm tra tài liệu chính thức để biết thêm chi tiết.
• Phiên bản PHP: 8.1 hoặc cao hơn.
• Máy chủ Apache
• Các tiện ích mở rộng PHP sau đây cần được cài đặt và kích hoạt:
-
Bcmath
-
Ctype
-
cURL
-
DOM
-
Fileinfo
-
Filter
-
Hash
-
Imagick
-
Intl
-
Mbstring
-
OpenSSL
-
PCRE
-
PDO
-
Session
-
Tokenizer
-
XML
-
Zip
-
mod_rewrite được kích hoạt.
• Cơ sở dữ liệu MySQL
Cài đặt:
1. Tải lên và giải nén:
▪ Tải lên tệp upload.zip lên máy chủ của bạn và giải nén nó. Thông thường, bạn sẽ giải nén trong thư mục /public_html trên lưu trữ chia sẻ hoặc /var/www/example.com trên lưu trữ VPS.
2. Truy cập URL ứng dụng:
▪ Tiếp theo, truy cập URL của ứng dụng trong trình duyệt. Bạn sẽ thấy trang cài đặt.
3. Trình hướng dẫn cài đặt:
▪ Trình hướng dẫn cài đặt sẽ hướng dẫn bạn qua quá trình cài đặt và cấu hình ứng dụng của bạn. Quá trình này bao gồm ba bước:
i. Yêu cầu máy chủ: Kiểm tra các yêu cầu của máy chủ.
ii. Thiết lập cơ sở dữ liệu: Cấu hình cơ sở dữ liệu.
iii. Thiết lập quản trị viên: Tạo tài khoản quản trị viên.
Chúc bạn cài đặt thành công!
Định dạng hình ảnh:
Tập lệnh này sử dụng tiện ích mở rộng php Imagick để chuyển đổi hình ảnh sang các định dạng khác nhau. Mặc định, Imagick hỗ trợ nhiều định dạng hình ảnh, nhưng tùy thuộc vào máy chủ của bạn, một số định dạng có thể yêu cầu các thư viện đại diện của bên thứ ba hoặc cấu hình bổ sung để được hỗ trợ đầy đủ bởi tập lệnh.
Lưu trữ chia sẻ:
• Với lưu trữ chia sẻ, các định dạng được hỗ trợ phụ thuộc vào nhà cung cấp dịch vụ lưu trữ. Và vì bạn không thể cài đặt các thư viện bên thứ ba cần thiết, bạn bị giới hạn bởi các định dạng được hỗ trợ mặc định.
Lưu trữ VPS:
• Với VPS, bạn có thể cài đặt các gói cần thiết và cấu hình máy chủ theo ý muốn. Hệ điều hành phổ biến nhất là Ubuntu và CentOS 7. Đối với tập lệnh này, tôi khuyên bạn nên sử dụng Ubuntu 22.04 hoặc cao hơn.
VPS: Ubuntu 22.04
• Mặc định, Ubuntu 22.04 có thể chuyển đổi hình ảnh sang các định dạng APNG, AVIF, BMP, DDS, DIB, GIF, HDR, HEIC, HEIF, ICO, JP2, JPE, JPEG, PNG, PSD, RAW, TGA, TIFF, WBMP và WEBP.
• Các định dạng PDF, AI và EPS cũng được hỗ trợ mặc định như là định dạng đầu ra nhưng không được hỗ trợ như là định dạng đầu vào. Để khắc phục điều này, hãy làm theo các bước sau:
Cài đặt Ghostscript:
sudo apt install ghostscript
Thay đổi chính sách ImageMagick:
sudo nano /etc/ImageMagick-6/policy.xml
Và thay đổi từ:
<policy domain="coder" rights="none" pattern="PS" />
<policy domain="coder" rights="none" pattern="PS2" />
<policy domain="coder" rights="none" pattern="PS3" />
<policy domain="coder" rights="none" pattern="EPS" />
<policy domain="coder" rights="none" pattern="PDF" />
<policy domain="coder" rights="none" pattern="XPS" />
Thành:
<policy domain="coder" rights="read|write" pattern="PS" />
<policy domain="coder" rights="read|write" pattern="PS2" />
<policy domain="coder" rights="read|write" pattern="PS3" />
<policy domain="coder" rights="read|write" pattern="EPS" />
<policy domain="coder" rights="read|write" pattern="PDF" />
<policy domain="coder" rights="read|write" pattern="XPS" />
Để hỗ trợ SVG, đọc và ghi, bạn cần cài đặt hai gói sau:
sudo apt -y install libmagickcore-6.q16-6-extra
sudo apt install potrace
Định dạng APNG yêu cầu gói ffmpeg:
sudo apt install ffmpeg
VPS: CentOS 7
• CentOS 7 cũng thường được sử dụng trong lưu trữ VPS. Nhưng nó đã lỗi thời và thiếu hỗ trợ cho một số định dạng. Cài đặt các gói cập nhật trên CentOS 7 thường yêu cầu kho lưu trữ RPM của Remi. Tôi không khuyên dùng hệ điều hành này cho tập lệnh này nhưng nếu bạn biết mình đang làm gì, bạn có thể cài đặt các thư viện cần thiết cho các định dạng không được hỗ trợ.
Vô hiệu hóa các bộ chuyển đổi không được hỗ trợ
• Vì không phải tất cả các định dạng đều được hỗ trợ bởi mọi máy chủ, tôi đã thêm tùy chọn để bật hoặc tắt bất kỳ bộ chuyển đổi nào từ bảng điều khiển.