{"id":4435,"date":"2025-05-22T10:00:36","date_gmt":"2025-05-22T10:00:36","guid":{"rendered":"https:\/\/ingenio.vip\/?post_type=tools-pages&#038;p=4435"},"modified":"2025-05-22T10:04:11","modified_gmt":"2025-05-22T10:04:11","slug":"gzip-compression-checker","status":"publish","type":"tools-pages","link":"https:\/\/ingenio.vip\/zh\/tools-pages\/gzip-compression-checker\/","title":{"rendered":"GZIP Compression Checker"},"content":{"rendered":"<div class=\"gzip-checker-tool\">\r\n    <div class=\"tool-header\">\r\n        <h1><span class=\"dashicons dashicons-performance\"><\/span> GZIP Compression Checker<\/h1>\r\n        <p>Verify if GZIP compression is enabled on any website to improve loading speed and performance.<\/p>\r\n    <\/div>\r\n    \r\n    <div class=\"tool-container\">\r\n        <div class=\"input-section\">\r\n            <div class=\"input-group\">\r\n                <input type=\"url\" id=\"website-url\" placeholder=\"https:\/\/example.com\" required>\r\n                <button id=\"check-gzip\" class=\"button-primary\">\r\n                    <span class=\"dashicons dashicons-search\"><\/span> Check GZIP\r\n                <\/button>\r\n            <\/div>\r\n        <\/div>\r\n        \r\n        <div class=\"results-section\" id=\"results-section\" style=\"display: none;\">\r\n            <div class=\"result-card\">\r\n                <div class=\"result-header\">\r\n                    <h3>GZIP Compression Test Results<\/h3>\r\n                <\/div>\r\n                <div class=\"result-body\">\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">Website URL:<\/span>\r\n                        <span class=\"result-value\" id=\"result-url\"><\/span>\r\n                    <\/div>\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">GZIP Status:<\/span>\r\n                        <span class=\"result-value\" id=\"gzip-status\"><\/span>\r\n                    <\/div>\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">Compression Ratio:<\/span>\r\n                        <span class=\"result-value\" id=\"compression-ratio\"><\/span>\r\n                    <\/div>\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">Original Size:<\/span>\r\n                        <span class=\"result-value\" id=\"original-size\"><\/span>\r\n                    <\/div>\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">Compressed Size:<\/span>\r\n                        <span class=\"result-value\" id=\"compressed-size\"><\/span>\r\n                    <\/div>\r\n                    <div class=\"result-row\">\r\n                        <span class=\"result-label\">Response Headers:<\/span>\r\n                        <div class=\"result-value\" id=\"response-headers\"><\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n            \r\n            <div class=\"recommendations\" id=\"recommendations\">\r\n                <h3><span class=\"dashicons dashicons-lightbulb\"><\/span> Recommendations<\/h3>\r\n                <div id=\"recommendations-content\"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n    \r\n    <div class=\"tool-footer\">\r\n        <p>\u00a9 2026 ingenio SEO Tools | GZIP Compression Checker<\/p>\r\n    <\/div>\r\n<\/div>\r\n\r\n<style>\r\n    .gzip-checker-tool {\r\n        max-width: 800px;\r\n        margin: 0 auto;\r\n        padding: 20px;\r\n        background: #f5f5f5;\r\n        border-radius: 8px;\r\n        box-shadow: 0 2px 10px rgba(0,0,0,0.1);\r\n    }\r\n    \r\n    .tool-header {\r\n        text-align: center;\r\n        margin-bottom: 30px;\r\n    }\r\n    \r\n    .tool-header h1 {\r\n        color: #23282d;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        gap: 10px;\r\n    }\r\n    \r\n    .tool-header p {\r\n        color: #666;\r\n        font-size: 16px;\r\n    }\r\n    \r\n    .input-section {\r\n        margin-bottom: 30px;\r\n    }\r\n    \r\n    .input-group {\r\n        display: flex;\r\n        gap: 10px;\r\n    }\r\n    \r\n    .input-group input {\r\n        flex: 1;\r\n        padding: 12px 15px;\r\n        border: 1px solid #ddd;\r\n        border-radius: 4px;\r\n        font-size: 16px;\r\n    }\r\n    \r\n    .button-primary {\r\n        background: #2271b1;\r\n        color: white;\r\n        border: none;\r\n        border-radius: 4px;\r\n        padding: 12px 20px;\r\n        cursor: pointer;\r\n        font-size: 16px;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n        transition: all 0.3s;\r\n    }\r\n    \r\n    .button-primary:hover {\r\n        background: #135e96;\r\n    }\r\n    \r\n    .results-section {\r\n        background: white;\r\n        border-radius: 8px;\r\n        padding: 20px;\r\n        box-shadow: 0 2px 5px rgba(0,0,0,0.05);\r\n    }\r\n    \r\n    .result-card {\r\n        border: 1px solid #ddd;\r\n        border-radius: 6px;\r\n        overflow: hidden;\r\n    }\r\n    \r\n    .result-header {\r\n        background: #f8f9f9;\r\n        padding: 15px 20px;\r\n        border-bottom: 1px solid #ddd;\r\n    }\r\n    \r\n    .result-header h3 {\r\n        margin: 0;\r\n        color: #23282d;\r\n    }\r\n    \r\n    .result-body {\r\n        padding: 20px;\r\n    }\r\n    \r\n    .result-row {\r\n        display: flex;\r\n        margin-bottom: 15px;\r\n        padding-bottom: 15px;\r\n        border-bottom: 1px dashed #eee;\r\n    }\r\n    \r\n    .result-row:last-child {\r\n        margin-bottom: 0;\r\n        padding-bottom: 0;\r\n        border-bottom: none;\r\n    }\r\n    \r\n    .result-label {\r\n        font-weight: 600;\r\n        width: 180px;\r\n        color: #555;\r\n    }\r\n    \r\n    .result-value {\r\n        flex: 1;\r\n        word-break: break-all;\r\n    }\r\n    \r\n    #gzip-status {\r\n        font-weight: 600;\r\n    }\r\n    \r\n    .gzip-enabled {\r\n        color: #4CAF50;\r\n    }\r\n    \r\n    .gzip-disabled {\r\n        color: #F44336;\r\n    }\r\n    \r\n    .recommendations {\r\n        margin-top: 30px;\r\n        background: #f8f9f9;\r\n        padding: 20px;\r\n        border-radius: 6px;\r\n        border: 1px solid #ddd;\r\n    }\r\n    \r\n    .recommendations h3 {\r\n        margin-top: 0;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n    }\r\n    \r\n    .tool-footer {\r\n        text-align: center;\r\n        margin-top: 30px;\r\n        color: #666;\r\n        font-size: 14px;\r\n    }\r\n    \r\n    .response-header {\r\n        margin-bottom: 5px;\r\n        font-family: monospace;\r\n    }\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n    const checkButton = document.getElementById('check-gzip');\r\n    const websiteUrl = document.getElementById('website-url');\r\n    const resultsSection = document.getElementById('results-section');\r\n    \r\n    checkButton.addEventListener('click', function() {\r\n        const url = websiteUrl.value.trim();\r\n        \r\n        if (!url) {\r\n            alert('Please enter a valid URL');\r\n            return;\r\n        }\r\n        \r\n        \/\/ Add loading state\r\n        checkButton.disabled = true;\r\n        checkButton.innerHTML = '<span class=\"dashicons dashicons-update spin\"><\/span> Checking...';\r\n        \r\n        \/\/ Make AJAX request to check GZIP\r\n        fetch(ajaxurl, {\r\n            method: 'POST',\r\n            headers: {\r\n                'Content-Type': 'application\/x-www-form-urlencoded',\r\n            },\r\n            body: new URLSearchParams({\r\n                action: 'check_gzip_compression',\r\n                url: url\r\n            })\r\n        })\r\n        .then(response => response.json())\r\n        .then(data => {\r\n            displayResults(data);\r\n        })\r\n        .catch(error => {\r\n            console.error('Error:', error);\r\n            alert('An error occurred while checking GZIP compression');\r\n        })\r\n        .finally(() => {\r\n            checkButton.disabled = false;\r\n            checkButton.innerHTML = '<span class=\"dashicons dashicons-search\"><\/span> Check GZIP';\r\n        });\r\n    });\r\n    \r\n    function displayResults(data) {\r\n        resultsSection.style.display = 'block';\r\n        document.getElementById('result-url').textContent = data.url;\r\n        \r\n        const gzipStatus = document.getElementById('gzip-status');\r\n        if (data.gzip_enabled) {\r\n            gzipStatus.textContent = 'Enabled \u2705';\r\n            gzipStatus.className = 'result-value gzip-enabled';\r\n        } else {\r\n            gzipStatus.textContent = 'Disabled \u274c';\r\n            gzipStatus.className = 'result-value gzip-disabled';\r\n        }\r\n        \r\n        document.getElementById('compression-ratio').textContent = data.compression_ratio;\r\n        document.getElementById('original-size').textContent = data.original_size;\r\n        document.getElementById('compressed-size').textContent = data.compressed_size;\r\n        \r\n        const headersContainer = document.getElementById('response-headers');\r\n        headersContainer.innerHTML = '';\r\n        \r\n        if (data.headers) {\r\n            for (const [key, value] of Object.entries(data.headers)) {\r\n                const headerElement = document.createElement('div');\r\n                headerElement.className = 'response-header';\r\n                headerElement.innerHTML = `<strong>${key}:<\/strong> ${value}`;\r\n                headersContainer.appendChild(headerElement);\r\n            }\r\n        }\r\n        \r\n        const recommendations = document.getElementById('recommendations-content');\r\n        recommendations.innerHTML = '';\r\n        \r\n        if (data.gzip_enabled) {\r\n            recommendations.innerHTML = `\r\n                <p>Great! GZIP compression is properly configured on this website.<\/p>\r\n                <p>To maintain good performance:<\/p>\r\n                <ul>\r\n                    <li>Ensure all text-based resources (HTML, CSS, JS, JSON, XML) are compressed<\/li>\r\n                    <li>Regularly monitor your website's performance<\/li>\r\n                <\/ul>\r\n            `;\r\n        } else {\r\n            recommendations.innerHTML = `\r\n                <p>GZIP compression is not enabled on this website. Enabling it can significantly improve loading times.<\/p>\r\n                <p>How to enable GZIP compression:<\/p>\r\n                <ul>\r\n                    <li><strong>Apache:<\/strong> Add compression rules to your .htaccess file<\/li>\r\n                    <li><strong>Nginx:<\/strong> Configure gzip settings in your nginx.conf<\/li>\r\n                    <li><strong>WordPress:<\/strong> Use a caching plugin like WP Rocket or W3 Total Cache<\/li>\r\n                    <li><strong>CDN:<\/strong> Enable compression in your CDN settings (Cloudflare, CloudFront, etc.)<\/li>\r\n                <\/ul>\r\n                <p>After enabling GZIP, retest to verify it's working correctly.<\/p>\r\n            `;\r\n        }\r\n        \r\n        \/\/ Scroll to results\r\n        resultsSection.scrollIntoView({ behavior: 'smooth' });\r\n    }\r\n    \r\n    \/\/ Add spin animation to dashicons\r\n    const style = document.createElement('style');\r\n    style.textContent = `\r\n        @keyframes spin {\r\n            0% { transform: rotate(0deg); }\r\n            100% { transform: rotate(360deg); }\r\n        }\r\n        .dashicons.spin {\r\n            animation: spin 1s linear infinite;\r\n        }\r\n    `;\r\n    document.head.appendChild(style);\r\n});\r\n<\/script>\n\n\n\n<p><a href=\"https:\/\/ingenio.vip\/wp-admin\/admin.php?page=ingenio-tools-gzip-compression-checker\"><\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>GZIP Compression Checker Verify if GZIP compression is enabled on any website to improve loading speed and performance. Check GZIP GZIP Compression Test Results Website URL: GZIP Status: Compression Ratio: Original Size: Compressed Size: Response Headers: Recommendations \u00a9 2026 ingenio SEO Tools | GZIP Compression Checker<\/p>\n<\/p><div class=\"more-link\"><a href=\"https:\/\/ingenio.vip\/zh\/tools-pages\/gzip-compression-checker\/\" class=\"btn btn-small btn--dark btn-hover-shadow\"><span class=\"text\">Continue Reading<\/span><i class=\"seoicon-right-arrow\"><\/i><\/a><\/div>","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"elementor_header_footer","meta":{"_acf_changed":false,"googlesitekit_rrm_CAowrpbbCw:productID":"","footnotes":""},"tools-categories":[],"class_list":["post-4435","tools-pages","type-tools-pages","status-publish","hentry"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/tools-pages\/4435","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/tools-pages"}],"about":[{"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/types\/tools-pages"}],"author":[{"embeddable":true,"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":1,"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/tools-pages\/4435\/revisions"}],"predecessor-version":[{"id":4436,"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/tools-pages\/4435\/revisions\/4436"}],"wp:attachment":[{"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/media?parent=4435"}],"wp:term":[{"taxonomy":"tools-categories","embeddable":true,"href":"https:\/\/ingenio.vip\/zh\/wp-json\/wp\/v2\/tools-categories?post=4435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}