{"id":129921,"date":"2022-08-16T11:34:53","date_gmt":"2022-08-16T08:34:53","guid":{"rendered":"https:\/\/www.zoner.fi\/tuki\/?page_id=129921"},"modified":"2025-11-12T15:28:03","modified_gmt":"2025-11-12T13:28:03","slug":"webhotellin-sahkopostitilien-asetukset","status":"publish","type":"page","link":"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/directadmin\/webhotellin-sahkopostitilien-asetukset\/","title":{"rendered":"Webhotellin s\u00e4hk\u00f6postitilien asetukset"},"content":{"rendered":"\n<p><a href=\"https:\/\/www.zoner.fi\/webhotellit\/\">Webhotellit<\/a> sis\u00e4lt\u00e4v\u00e4t paketista riippuen kaksi tai enemm\u00e4n s\u00e4hk\u00f6postilaatikoita. Uusien s\u00e4hk\u00f6postiosoitteiden luonti ja hallinnointi tapahtuu webhotellin hallintapaneelin kautta. <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"#1\">Mist\u00e4 l\u00f6yd\u00e4n webhotellin s\u00e4hk\u00f6postin palvelintiedot?<\/a><\/li>\n\n\n\n<li><a href=\"#2\">IMAP vai POP? Protokollien erot<\/a><\/li>\n\n\n\n<li><a href=\"#3\">Miten m\u00e4\u00e4rit\u00e4n s\u00e4hk\u00f6postin s\u00e4hk\u00f6postiohjelmassa?<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1\">Mist\u00e4 l\u00f6yd\u00e4n webhotellin s\u00e4hk\u00f6postin palvelintiedot?<\/h2>\n\n\n\n<p>Voit tarkistaa Zonerilla sijaitsevan s\u00e4hk\u00f6postisi palvelintiedot alla olevalla ty\u00f6kalulla.<br>Sy\u00f6t\u00e4 verkkotunnus tai s\u00e4hk\u00f6postiosoite ty\u00f6kaluun, ja klikkaa Tarkista.<br>Palvelintiedot ja portit l\u00f6ytyv\u00e4t kohdasta <strong>S\u00e4hk\u00f6postiasetukset<\/strong>.<\/p>\n\n\n    <div class=\"zoner-email-checker\">\r\n        <div class=\"checker-form\">\r\n            <h2 class=\"form-title\">Verkkotunnuksen tarkistusty\u00f6kalu<\/h2>\r\n            <p class=\"form-subtitle\">Tarkista verkkotunnuksesi s\u00e4hk\u00f6postim\u00e4\u00e4ritykset ja palvelimen tiedot.<\/p>\r\n            \r\n            <form id=\"emailForm\" method=\"POST\">\r\n                <div class=\"input-group\">\r\n                    <input type=\"text\" id=\"email\" name=\"email\" class=\"email-input\" \r\n                           placeholder=\"Sy\u00f6t\u00e4 verkkotunnus (esimerkiksi: zoner.fi)\" required>\r\n                    <button type=\"submit\" class=\"check-btn\" id=\"submitBtn\">\r\n                        <span>Tarkista<\/span>\r\n                        <div class=\"spinner\" id=\"spinner\"><\/div>\r\n                    <\/button>\r\n                <\/div>\r\n            <\/form>\r\n        <\/div>\r\n\r\n        <div id=\"results\" class=\"results-container\"><\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        document.getElementById('emailForm').addEventListener('submit', async function(e) {\r\n            e.preventDefault();\r\n            \r\n            const submitBtn = document.getElementById('submitBtn');\r\n            const spinner = document.getElementById('spinner');\r\n            const results = document.getElementById('results');\r\n            \r\n            submitBtn.disabled = true;\r\n            spinner.style.display = 'block';\r\n            results.innerHTML = '';\r\n            \r\n            try {\r\n                const formData = new FormData(this);\r\n                const response = await fetch('', {\r\n                    method: 'POST',\r\n                    body: formData\r\n                });\r\n\r\n                const data = await response.json();\r\n                \r\n                if (data.messages && data.messages.length > 0) {\r\n                    data.messages.forEach(message => {\r\n                        results.innerHTML += message;\r\n                    });\r\n                } else {\r\n                    results.innerHTML = '<div class=\"error-container\"><h3 class=\"error-title\">Virheellinen sy\u00f6te<\/h3><p class=\"error-message\">No response received from server.<\/p><\/div>';\r\n                }\r\n            } catch (error) {\r\n                results.innerHTML = '<div class=\"error-container\"><h3 class=\"error-title\">Virheellinen sy\u00f6te<\/h3><p class=\"error-message\">Unable to process request. Please try again.<\/p><\/div>';\r\n            } finally {\r\n                submitBtn.disabled = false;\r\n                spinner.style.display = 'none';\r\n            }\r\n        });\r\n        \r\n        \/\/ FTP Toggle function - make it global\r\n        window.showFtpInfo = function(type, button) {\r\n            \/\/ Remove active class from all buttons\r\n            document.querySelectorAll('.ftp-toggle-btn').forEach(btn => {\r\n                btn.classList.remove('active');\r\n            });\r\n            \r\n            \/\/ Add active class to clicked button\r\n            button.classList.add('active');\r\n            \r\n            \/\/ Hide all ftp info divs\r\n            document.querySelectorAll('.ftp-info').forEach(info => {\r\n                info.classList.remove('active');\r\n            });\r\n            \r\n            \/\/ Show selected ftp info\r\n            const targetInfo = document.getElementById(type + '-info');\r\n            if (targetInfo) {\r\n                targetInfo.classList.add('active');\r\n            }\r\n        };\r\n        \r\n        \/\/ Copy to clipboard function\r\n        window.copyToClipboard = function(text, button) {\r\n            if (navigator.clipboard && window.isSecureContext) {\r\n                navigator.clipboard.writeText(text).then(function() {\r\n                    showCopyFeedback(button);\r\n                }).catch(function(err) {\r\n                    fallbackCopy(text, button);\r\n                });\r\n            } else {\r\n                fallbackCopy(text, button);\r\n            }\r\n        };\r\n        \r\n        \/\/ Fallback copy method for older browsers\r\n        function fallbackCopy(text, button) {\r\n            const textArea = document.createElement('textarea');\r\n            textArea.value = text;\r\n            textArea.style.position = 'fixed';\r\n            textArea.style.left = '-999999px';\r\n            textArea.style.top = '-999999px';\r\n            document.body.appendChild(textArea);\r\n            textArea.focus();\r\n            textArea.select();\r\n            \r\n            try {\r\n                document.execCommand('copy');\r\n                showCopyFeedback(button);\r\n            } catch (err) {\r\n                console.error('Copy failed', err);\r\n            }\r\n            \r\n            document.body.removeChild(textArea);\r\n        }\r\n        \r\n        \/\/ Show copy feedback\r\n        function showCopyFeedback(button) {\r\n            const originalHTML = button.innerHTML;\r\n            const originalClass = button.className;\r\n            \r\n            button.innerHTML = '\u2713 Copied!';\r\n            button.classList.add('copied');\r\n            button.disabled = true;\r\n            \r\n            setTimeout(function() {\r\n                button.innerHTML = originalHTML;\r\n                button.className = originalClass;\r\n                button.disabled = false;\r\n            }, 2000);\r\n        }\r\n        \r\n        \/\/ Copy multiple lines\r\n        window.copyMultiLine = function(lines, button) {\r\n            const text = lines.join('\\n');\r\n            window.copyToClipboard(text, button);\r\n        };\r\n        \r\n        \/\/ Copy email settings\r\n        window.copyEmailSettings = function(button) {\r\n            const settingsContainer = button.closest('.info-group').querySelector('.settings-text');\r\n            if (settingsContainer) {\r\n                \/\/ Get the HTML content and convert <br> tags to newlines\r\n                let html = settingsContainer.innerHTML;\r\n                let text = html.replace(\/<br\\s*\\\/?>\/gi, '\\n')\r\n                              .replace(\/<[^>]*>\/g, '') \/\/ Remove other HTML tags\r\n                              .replace(\/&nbsp;\/g, ' ') \/\/ Replace &nbsp; with spaces\r\n                              .trim();\r\n                window.copyToClipboard(text, button);\r\n            }\r\n        };\r\n    <\/script>\r\n    \n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"992\" height=\"960\" src=\"https:\/\/www.zoner.fi\/tuki\/wp-content\/uploads\/2025\/09\/sahkopostipalvelimet.png\" alt=\"\" class=\"wp-image-137296\" srcset=\"https:\/\/www.zoner.fi\/tuki\/wp-content\/uploads\/2025\/09\/sahkopostipalvelimet.png 992w, https:\/\/www.zoner.fi\/tuki\/wp-content\/uploads\/2025\/09\/sahkopostipalvelimet-300x290.png 300w, https:\/\/www.zoner.fi\/tuki\/wp-content\/uploads\/2025\/09\/sahkopostipalvelimet-768x743.png 768w\" sizes=\"auto, (max-width: 992px) 100vw, 992px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"2\">IMAP vai POP? Protokollien erot<\/h2>\n\n\n\n<p><strong>IMAP<\/strong>&nbsp;s\u00e4ilytt\u00e4\u00e4 viestit palvelimella ja tukee palvelimella olevia hakemistoja, eli viestit voidaan j\u00e4rjestell\u00e4 eri hakemistoihin. IMAP:n avulla palvelimella oleviin s\u00e4hk\u00f6postiviesteihin voidaan p\u00e4\u00e4st\u00e4 k\u00e4siksi useilta eri koneilta, kunhan vain k\u00e4ytetty<a href=\"https:\/\/www.zoner.fi\/sahkoposti\/sahkopostiohjelma\/\"> s\u00e4hk\u00f6postiohjelma<\/a> tukee sit\u00e4.<\/p>\n\n\n\n<p><strong>POP3<\/strong>-protokolla kopioi ensin kaikki viestit palvelimelta sille laitteelle, josta yhteys on otettu. Samalla viestit h\u00e4vitet\u00e4\u00e4n palvelimelta (ellei toisin m\u00e4\u00e4r\u00e4t\u00e4). POP-protokollan etuna on, ett\u00e4 siin\u00e4 ei rasiteta palvelimen resursseja, eik\u00e4 yhteytt\u00e4 tarvitse pit\u00e4\u00e4 p\u00e4\u00e4ll\u00e4 viestien k\u00e4sittelyss\u00e4. Viestit voi yleisesti lukea vain laitteelta, jolle ne on ladattu.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"3\">Miten m\u00e4\u00e4rit\u00e4n s\u00e4hk\u00f6postin s\u00e4hk\u00f6postiohjelmassa?<\/h2>\n\n\n\n<p>Alta l\u00f6yd\u00e4t ohjeet s\u00e4hk\u00f6postitilin k\u00e4ytt\u00e4miseen eri s\u00e4hk\u00f6postiohjelmissa. K\u00e4yt\u00e4 tilin m\u00e4\u00e4ritt\u00e4miseen kohdassa &#8221;<a href=\"#1\">Mist\u00e4 l\u00f6yd\u00e4n webhotellin s\u00e4hk\u00f6postin palvelintiedot?<\/a>&#8221; kuvattuja palvelintietoja.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-yhdistan-sahkopostin-gmailiin\/\">Miten yhdist\u00e4n s\u00e4hk\u00f6postin Gmailiin?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-yhdistan-sahkopostin-outlookiin\/\">Miten yhdist\u00e4n s\u00e4hk\u00f6postin Outlookiin?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/webhotellit\/miten-asennan-webhotellin-sahkopostin-iphoneen\/\">Miten asennan webhotellin s\u00e4hk\u00f6postin iPhoneen?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-asennan-sahkopostin-macin-mail-sovellukseen\/\">Miten asennan s\u00e4hk\u00f6postin Macin Mail-sovellukseen?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-asennan-sahkopostin-windowsin-sahkopostisovellukseen\/\">Miten asennan s\u00e4hk\u00f6postin Windowsin s\u00e4hk\u00f6postisovellukseen?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-asennan-sahkopostin-thunderbirdiin\/\">Miten asennan s\u00e4hk\u00f6postin Thunderbirdiin?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/miten-asennan-sahkopostin-android-puhelimeen\/\">Miten asennan s\u00e4hk\u00f6postin Android-puhelimeen?<\/a><\/li>\n<\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Webhotellit sis\u00e4lt\u00e4v\u00e4t paketista riippuen kaksi tai enemm\u00e4n s\u00e4hk\u00f6postilaatikoita. Uusien s\u00e4hk\u00f6postiosoitteiden luonti ja hallinnointi tapahtuu webhotellin hallintapaneelin kautta. Mist\u00e4 l\u00f6yd\u00e4n webhotellin s\u00e4hk\u00f6postin palvelintiedot? Voit tarkistaa Zonerilla sijaitsevan s\u00e4hk\u00f6postisi palvelintiedot alla olevalla ty\u00f6kalulla.Sy\u00f6t\u00e4 verkkotunnus tai s\u00e4hk\u00f6postiosoite ty\u00f6kaluun, ja klikkaa Tarkista.Palvelintiedot ja portit l\u00f6ytyv\u00e4t kohdasta S\u00e4hk\u00f6postiasetukset. IMAP vai POP? Protokollien erot IMAP&nbsp;s\u00e4ilytt\u00e4\u00e4 viestit palvelimella ja tukee palvelimella olevia &#8230; <a title=\"Webhotellin s\u00e4hk\u00f6postitilien asetukset\" class=\"read-more\" href=\"https:\/\/www.zoner.fi\/tuki\/sahkopostiohjeet\/directadmin\/webhotellin-sahkopostitilien-asetukset\/\" aria-label=\"Lue lis\u00e4\u00e4 aiheesta Webhotellin s\u00e4hk\u00f6postitilien asetukset\">Lue lis\u00e4\u00e4<\/a><\/p>\n","protected":false},"author":15,"featured_media":0,"parent":137084,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"1066,1076,1063","_relevanssi_noindex_reason":"","footnotes":""},"categories":[213,218,190,195,192,193,194,217],"tags":[199,214,215],"wf_page_folders":[],"class_list":{"0":"post-129921","1":"page","2":"type-page","3":"status-publish","5":"category-cpanel-webhotelli-fi-sahkoposti","6":"category-cpanel-webhotelli-fi-webhotellit","7":"category-cpanel-wepardi","8":"category-cpanel-wepardi-sahkoposti","9":"category-directadmin","10":"category-directadmin-sahkoposti","11":"category-zoner-home","12":"category-zoner-home-webhotellit","13":"tag-sahkoposti","14":"tag-sahkopostin-hallinta","15":"tag-sahkopostiohjelmat"},"_links":{"self":[{"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/pages\/129921","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/comments?post=129921"}],"version-history":[{"count":18,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/pages\/129921\/revisions"}],"predecessor-version":[{"id":138045,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/pages\/129921\/revisions\/138045"}],"up":[{"embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/pages\/137084"}],"wp:attachment":[{"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/media?parent=129921"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/categories?post=129921"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/tags?post=129921"},{"taxonomy":"wf_page_folders","embeddable":true,"href":"https:\/\/www.zoner.fi\/tuki\/wp-json\/wp\/v2\/wf_page_folders?post=129921"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}