ফাইলের প্রকার .svg চিত্র আপলোডে ত্রুটি ম্যাজেন্টো ২.৩.১


8

কীভাবে অনুমোদিত ফাইলের ধরণের এসভিজি চিত্র আপলোড ম্যাজেন্টো 2

System.log এ দেখান

main.ERROR: Unsupported image format. File:

/var/www/html/pub/media//logos_1.svg

কোন সমস্যা?
সাভান প্যাটেল


@ মাইটি_এইচকি হ্যাঁ আমি জানি তবে আমার পক্ষে কাজ করছে না
সাভান প্যাটেল

পণ্যের ছবি ???
আর কে রাঠোদ

আপনি কি এসভিজি আপলোড করবেন? যদি হ্যাঁ দয়া করে আমাকে সমাধানটি জানান
Zoya

উত্তর:


1

এই মডিউলটি WYSIWYG- সম্পাদকের অভ্যন্তরে বিভিন্ন ফাইল টাইপগুলি আপলোড করা সম্ভব করে তোলে।

নিম্নলিখিত ফাইল টাইপগুলি ডিফল্টরূপে উপলব্ধ এবং মডিউলের কনফিগারেশনে অনুমোদিত ফাইল টাইপগুলিতে অতিরিক্ত ফাইল টাইপ যুক্ত করা সম্ভব (সাধারণ> বিষয়বস্তু পরিচালনা> WYSIWYG বিকল্পগুলি> অতিরিক্ত অনুমোদিত ফাইল টাইপ):

Word (doc, docm, docx)

Excel (csv, xml, xls, xlsx)

PDF (pdf)

Compressed Folder (zip, tar)

https://github.com/experius/Magento-2-Module-Experius-WysiwygDownloads

আপনি di.xML সম্পাদনা করতে এবং নিম্নলিখিত কোড যুক্ত করতে পারেন

<item name="allowed" xsi:type="array">
    <item name="svg" xsi:type="string">image/svg</item> 
</item>

<item name="image_allowed" xsi:type="array">
    <item name="svg" xsi:type="string">image/svg</item>
</item>

<item name="media_allowed" xsi:type="array">
    <item name="svg" xsi:type="string">image/svg</item>
</item>

এবং ব্যাকএন্ডে আপনার কী প্রয়োজন তা সেট করুন

এখানে চিত্র বর্ণনা লিখুন


কোড যুক্ত করা কেবল di.xML এর পক্ষে যথেষ্ট বা এটি প্লাগইন ইনস্টল করার প্রয়োজন কি?
জোয়া

8

SVG গুলি ডিফল্টরূপে Magento 2 এ অক্ষম হওয়ার কারণ, সুরক্ষিত কারণে যেমন সঞ্চিত XSS। এবং আমি সুপারিশ করব যে আপনি তাদের জন্য আরও ভাল স্যানিটাইজেশন না পাওয়া পর্যন্ত আপনি এগুলিকে এখনই কমপক্ষে অক্ষম রেখে দিন।

আপনি এর একটি উদাহরণ দেখতে পাচ্ছেন APPSEC-1673, যেখানে তারা ফ্যাভিকনে এসভিজি সরিয়েছে

https://magento.com/security/patches/magento-2016-and-219-security-update

APPSEC-1673 ফ্যাভিকনে এসভিজি চিত্র ব্যবহার করে এক্সএসএস সঞ্চিত।

আপনি ব্যাকএন্ডের মাধ্যমে এসভিজির আপলোড করতে পারবেন না, আপনি এখনও তাদের এফটিপি দিয়ে আপলোড করতে পারেন এবং সেগুলি উল্লেখ করতে পারেন যেন আপনি তাদের আপলোড করেছেন। এই উপায়ে আপনি এখনও এসভিজি ব্যবহারের সুবিধাগুলি পান তবে ব্যবহারকারীদের সেগুলি লোড করার অনুমতি দেওয়ার সুরক্ষা সমস্যাগুলির সাথে আপনাকে মোকাবেলা করতে হবে না।

ফ্যাভিকন / লোগো আপলোডের জন্য এসভিজি আপলোড সক্ষম করুন

তবে আপনি যদি এখনও ফ্যাভিকন / লোগো আপলোডের জন্য এসভিজি আপলোড সক্ষম করতে চান। আপনি একটি কাস্টম মডিউল তৈরি করতে এবং এটি থেকে সরানো হয়েছে এমন এক্সএমএল নোড / পিএইচপি ফাংশনগুলিকে ওভাররাইড করতে পারেন। আপনি নীচের ডিফ মধ্যে খুঁজে পেতে পারেন

https://github.com/magento/magento2/compare/2.1.8...2.1.9

অন্য কোথাও এসভিজি সক্ষম করুন

আপনি এসভিজি আপলোডগুলি সক্ষম করতে চান তার উপর নির্ভরশীল আপনাকে কোন ফাইলগুলিকে ওভাররাইড করতে হবে তা প্রভাবিত করবে। আপনি ফাইল আপনার জন্য একটি দ্রুত অনুসন্ধান দ্বারা এডিট করতে হবে এটি করতে সক্ষম হওয়া উচিত allowedExtensionsমধ্যে XMLফাইল বা পারেন getAllowedExtensions setAllowedExtensionsমধ্যে PHPফাইল।


6

ফাইল এবং কোডের নীচে ওভাররাইটটি খুলুন <item name="svg" xsi:type="string">text/html</item>

/vendor/magento/module-cms/etc/di.xml

<type name="Magento\Cms\Model\Wysiwyg\Images\Storage">
    <arguments>
        <argument name="extensions" xsi:type="array">
            <item name="allowed" xsi:type="array">
                ......
                <item name="svg" xsi:type="string">text/html</item>
                ......
            </item>
            <item name="image_allowed" xsi:type="array">
                ......
                <item name="svg" xsi:type="string">text/html</item>
                ......
            </item>
            <item name="media_allowed" xsi:type="array">
                ......
                <item name="svg" xsi:type="string">text/html</item>
                ......
            </item>
        </argument>
    </arguments>
</type>

আপনি যদি ম্যাজেন্টো ২.৩ সংস্করণের নীচে ব্যবহার করেন তবে কোড সিলড পরিবর্তন হয়। উপরে কোড প্রতিস্থাপন <item name="svg" xsi:type="string">text/html</item>করুন<item name="svg" xsi:type="number">1</item>


এখনও কাজ করছে না ফাইল বৈধতা ব্যর্থ হয়েছে। এবং আমি উল্লেখ করেছি আমি ম্যাজেন্টো ২.৩.১ সংস্করণ ব্যবহার করেছি
সাভান প্যাটেল

5

ফাইলের নীচে খুলুন

/vendor/magento/module-cms/etc/di.xml

আপনি যে এক্সটেনশানটি অনুমতি দিতে চান তা যুক্ত করুন

<item name="svg" xsi:type="number">1</item>

<argument name="extensions" xsi:type="array">
    <item name="allowed" xsi:type="array">
        <item name="jpg" xsi:type="number">1</item>
        <item name="jpeg" xsi:type="number">1</item>
        <item name="png" xsi:type="number">1</item>
        <item name="gif" xsi:type="number">1</item>
        <item name="svg" xsi:type="number">1</item>
    </item>
    <item name="image_allowed" xsi:type="array">
        <item name="jpg" xsi:type="number">1</item>
        <item name="jpeg" xsi:type="number">1</item>
        <item name="png" xsi:type="number">1</item>
        <item name="gif" xsi:type="number">1</item>
    </item>
    <item name="media_allowed" xsi:type="array">
        <item name="flv" xsi:type="number">1</item>
        <item name="swf" xsi:type="number">1</item>
        <item name="avi" xsi:type="number">1</item>
        <item name="mov" xsi:type="number">1</item>
        <item name="rm" xsi:type="number">1</item>
        <item name="wmv" xsi:type="number">1</item>
    </item>
</argument>

ধন্যবাদ রাকেশ কিন্তু তবুও কাজ করছে না
সাভান প্যাটেল

@ সাভানপ্যাটেল আপনি কি আপনার থিমের এই পথটি ওভাররাইডের পথটি পরীক্ষা করেছেন? তাহলে ওভাররাইড ফাইলে এই কোড আপডেট
রাকেশ স্কুলের Donga

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.