{"id":128,"date":"2011-11-29T06:32:00","date_gmt":"2011-11-29T06:32:00","guid":{"rendered":"http:\/\/pheonixsolutions.com\/?p=128"},"modified":"2026-06-21T09:55:15","modified_gmt":"2026-06-21T04:25:15","slug":"enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl","status":"publish","type":"post","link":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/","title":{"rendered":"Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<p>Server Name Indication, commonly known as SNI, is a TLS extension that allows multiple SSL-enabled websites to run on the same IP address and port. Without SNI, each HTTPS website normally required a dedicated IP address because the web server had to select the SSL certificate before knowing which domain the visitor requested.<\/p>\n\n\n\n<p>With SNI, the client sends the requested hostname during the TLS handshake. Apache can then select the correct SSL certificate for that domain. This makes it possible to host multiple secure websites on a shared hosting server without assigning a dedicated IP address to every domain.<\/p>\n\n\n\n<p>Older guides used <code>mod_gnutls<\/code> for SNI support. In modern Apache installations, this is no longer required. Apache with <code>mod_ssl<\/code> supports SNI, so the recommended method is to configure name-based SSL virtual hosts using <code>mod_ssl<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prerequisites<\/h2>\n\n\n\n<p>Before starting, make sure you have:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>A Linux server with Apache installed.<\/li>\n\n\n\n<li>Root or sudo access.<\/li>\n\n\n\n<li>Apache <code>mod_ssl<\/code> enabled.<\/li>\n\n\n\n<li>DNS records for all domains pointing to the same server IP.<\/li>\n\n\n\n<li>A valid SSL certificate and private key for each domain.<\/li>\n\n\n\n<li>Port 443 opened in the firewall.<\/li>\n<\/ol>\n\n\n\n<p>Example domains used in this guide:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">v1.example.org\nv2.example.org\n<\/pre>\n\n\n\n<p>Both domains will use the same server IP address.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1: Install Apache SSL Module<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">RHEL \/ CentOS \/ AlmaLinux \/ Rocky Linux<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo dnf install httpd mod_ssl -y\nsudo systemctl enable --now httpd\n<\/pre>\n\n\n\n<p>For older systems:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo yum install httpd mod_ssl -y\nsudo systemctl enable --now httpd\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Ubuntu \/ Debian<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update\nsudo apt install apache2 openssl -y\nsudo a2enmod ssl\nsudo systemctl restart apache2\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2: Create Document Root Directories<\/h2>\n\n\n\n<p>Create separate document roots for each domain.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo mkdir -p \/var\/www\/v1\/public_html\nsudo mkdir -p \/var\/www\/v2\/public_html\n<\/pre>\n\n\n\n<p>Create test index files.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">echo \"Welcome to v1.example.org\" | sudo tee \/var\/www\/v1\/public_html\/index.html\necho \"Welcome to v2.example.org\" | sudo tee \/var\/www\/v2\/public_html\/index.html\n<\/pre>\n\n\n\n<p>Set proper ownership.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">RHEL-based systems<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo chown -R apache:apache \/var\/www\/v1 \/var\/www\/v2\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Ubuntu \/ Debian<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo chown -R www-data:www-data \/var\/www\/v1 \/var\/www\/v2\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3: Place SSL Certificates<\/h2>\n\n\n\n<p>Each domain must have its own SSL certificate and private key.<\/p>\n\n\n\n<p>Example certificate paths:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/etc\/ssl\/certs\/v1.example.org.crt\n\/etc\/ssl\/private\/v1.example.org.key\n\n\/etc\/ssl\/certs\/v2.example.org.crt\n\/etc\/ssl\/private\/v2.example.org.key\n<\/pre>\n\n\n\n<p>The certificate Common Name or Subject Alternative Name should match the domain name.<\/p>\n\n\n\n<p>For production, use a trusted SSL certificate from a Certificate Authority or Let\u2019s Encrypt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Configure Apache SSL Virtual Hosts<\/h2>\n\n\n\n<p>Create a virtual host configuration file.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">RHEL \/ CentOS<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo vi \/etc\/httpd\/conf.d\/ssl-vhosts.conf\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Ubuntu \/ Debian<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo vi \/etc\/apache2\/sites-available\/ssl-vhosts.conf\n<\/pre>\n\n\n\n<p>Add the following configuration:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;VirtualHost *:443>\n    ServerName v1.example.org\n    DocumentRoot \/var\/www\/v1\/public_html\n\n    SSLEngine on\n    SSLCertificateFile \/etc\/ssl\/certs\/v1.example.org.crt\n    SSLCertificateKeyFile \/etc\/ssl\/private\/v1.example.org.key\n\n    ErrorLog \/var\/log\/httpd\/v1_ssl_error.log\n    CustomLog \/var\/log\/httpd\/v1_ssl_access.log combined\n&lt;\/VirtualHost>\n\n&lt;VirtualHost *:443>\n    ServerName v2.example.org\n    DocumentRoot \/var\/www\/v2\/public_html\n\n    SSLEngine on\n    SSLCertificateFile \/etc\/ssl\/certs\/v2.example.org.crt\n    SSLCertificateKeyFile \/etc\/ssl\/private\/v2.example.org.key\n\n    ErrorLog \/var\/log\/httpd\/v2_ssl_error.log\n    CustomLog \/var\/log\/httpd\/v2_ssl_access.log combined\n&lt;\/VirtualHost>\n<\/pre>\n\n\n\n<p>For Ubuntu \/ Debian, log paths can be changed like this:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ErrorLog ${APACHE_LOG_DIR}\/v1_ssl_error.log\nCustomLog ${APACHE_LOG_DIR}\/v1_ssl_access.log combined\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 5: Enable the Site on Ubuntu \/ Debian<\/h2>\n\n\n\n<p>For Ubuntu \/ Debian systems, enable the new SSL virtual host file:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo a2ensite ssl-vhosts.conf\nsudo systemctl reload apache2\n<\/pre>\n\n\n\n<p>For RHEL-based systems, files inside <code>\/etc\/httpd\/conf.d\/<\/code> are loaded automatically.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 6: Test Apache Configuration<\/h2>\n\n\n\n<p>Before restarting Apache, check the configuration syntax.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">RHEL \/ CentOS<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apachectl configtest\nsudo systemctl restart httpd\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Ubuntu \/ Debian<\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apache2ctl configtest\nsudo systemctl restart apache2\n<\/pre>\n\n\n\n<p>Expected output:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Syntax OK\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 7: Test SNI<\/h2>\n\n\n\n<p>Open the domains in a browser:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">https:\/\/v1.example.org\nhttps:\/\/v2.example.org\n<\/pre>\n\n\n\n<p>Each domain should load its own website and show its own SSL certificate.<\/p>\n\n\n\n<p>You can also test using OpenSSL:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">openssl s_client -connect SERVER_IP:443 -servername v1.example.org\n<\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">openssl s_client -connect SERVER_IP:443 -servername v2.example.org\n<\/pre>\n\n\n\n<p>Check the certificate details in the output. The certificate shown should match the domain passed in the <code>-servername<\/code> option.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Important Notes<\/h2>\n\n\n\n<p>The first SSL virtual host acts as the default virtual host. If an old browser or client does not support SNI, Apache may return the certificate from the first virtual host.<\/p>\n\n\n\n<p>For modern browsers and operating systems, SNI is supported by default.<\/p>\n\n\n\n<p>Do not use the old <code>NameVirtualHost<\/code> directive on Apache 2.4. It is no longer required. Apache automatically handles name-based virtual hosts when multiple virtual hosts are configured on the same IP and port.<\/p>\n\n\n\n<p>Do not compile <code>mod_gnutls<\/code> unless you are working on a very old legacy server. For modern servers, <code>mod_ssl<\/code> is the recommended module.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>SNI allows multiple HTTPS websites to share the same IP address without requiring a dedicated IP for every SSL certificate. This is especially useful for shared hosting environments, where many domains are hosted on one server.<\/p>\n\n\n\n<p>In modern Apache installations, SNI can be configured easily using <code>mod_ssl<\/code> and separate SSL virtual host blocks. Each domain can have its own certificate, private key, document root, logs, and configuration while still using the same server IP address.<\/p>\n\n\n\n<p>This reduces IP usage, lowers hosting cost, and makes SSL hosting easier to manage.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Server Name Indication, commonly known as SNI, is a TLS extension that allows multiple SSL-enabled websites to run on the same IP address and port. Without SNI, each HTTPS website normally required a dedicated IP address because the web server had to select the SSL certificate before knowing which&hellip; <a href=\"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/\" class=\"more-link read-more\" rel=\"bookmark\">Continue Reading <span class=\"screen-reader-text\">Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address<\/span><i class=\"fa fa-arrow-right\"><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[],"class_list":{"0":"post-128","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"hentry","6":"category-uncategorized","7":"h-entry","9":"h-as-article"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pheonix Solutions - We Empower Your Business Growth<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pheonix Solutions - We Empower Your Business Growth\" \/>\n<meta property=\"og:description\" content=\"Introduction Server Name Indication, commonly known as SNI, is a TLS extension that allows multiple SSL-enabled websites to run on the same IP address and port. Without SNI, each HTTPS website normally required a dedicated IP address because the web server had to select the SSL certificate before knowing which&hellip; Continue Reading Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address\" \/>\n<meta property=\"og:url\" content=\"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/\" \/>\n<meta property=\"og:site_name\" content=\"PHEONIXSOLUTIONS\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/PheonixSolutions-209942982759387\/\" \/>\n<meta property=\"article:published_time\" content=\"2011-11-29T06:32:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-21T04:25:15+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/pheonixsolutions.com\/blog\/wp-content\/uploads\/2016\/09\/PX2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"3837\" \/>\n\t<meta property=\"og:image:height\" content=\"2540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@pheonixsolution\" \/>\n<meta name=\"twitter:site\" content=\"@pheonixsolution\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/0ffa33d73c869faec2d50e79c24e3503\"},\"headline\":\"Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address\",\"datePublished\":\"2011-11-29T06:32:00+00:00\",\"dateModified\":\"2026-06-21T04:25:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/\"},\"wordCount\":589,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#organization\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/\",\"url\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/\",\"name\":\"Pheonix Solutions - We Empower Your Business Growth\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#website\"},\"datePublished\":\"2011-11-29T06:32:00+00:00\",\"dateModified\":\"2026-06-21T04:25:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/\",\"name\":\"Pheonix Solutions\",\"description\":\"We Empower Your Business Growth\",\"publisher\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#organization\",\"name\":\"PheonixSolutions\",\"url\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/12\\\/logo.png\",\"contentUrl\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/12\\\/logo.png\",\"width\":454,\"height\":300,\"caption\":\"PheonixSolutions\"},\"image\":{\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/PheonixSolutions-209942982759387\\\/\",\"https:\\\/\\\/x.com\\\/pheonixsolution\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/0ffa33d73c869faec2d50e79c24e3503\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"http:\\\/\\\/pheonixsolutions.com\\\/blog\"],\"url\":\"https:\\\/\\\/pheonixsolutions.com\\\/blog\\\/author\\\/admin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pheonix Solutions - We Empower Your Business Growth","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/","og_locale":"en_US","og_type":"article","og_title":"Pheonix Solutions - We Empower Your Business Growth","og_description":"Introduction Server Name Indication, commonly known as SNI, is a TLS extension that allows multiple SSL-enabled websites to run on the same IP address and port. Without SNI, each HTTPS website normally required a dedicated IP address because the web server had to select the SSL certificate before knowing which&hellip; Continue Reading Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address","og_url":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/","og_site_name":"PHEONIXSOLUTIONS","article_publisher":"https:\/\/www.facebook.com\/PheonixSolutions-209942982759387\/","article_published_time":"2011-11-29T06:32:00+00:00","article_modified_time":"2026-06-21T04:25:15+00:00","og_image":[{"width":3837,"height":2540,"url":"https:\/\/pheonixsolutions.com\/blog\/wp-content\/uploads\/2016\/09\/PX2.png","type":"image\/png"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@pheonixsolution","twitter_site":"@pheonixsolution","twitter_misc":{"Written by":"admin","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/#article","isPartOf":{"@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/"},"author":{"name":"admin","@id":"https:\/\/pheonixsolutions.com\/blog\/#\/schema\/person\/0ffa33d73c869faec2d50e79c24e3503"},"headline":"Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address","datePublished":"2011-11-29T06:32:00+00:00","dateModified":"2026-06-21T04:25:15+00:00","mainEntityOfPage":{"@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/"},"wordCount":589,"commentCount":0,"publisher":{"@id":"https:\/\/pheonixsolutions.com\/blog\/#organization"},"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/","url":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/","name":"Pheonix Solutions - We Empower Your Business Growth","isPartOf":{"@id":"https:\/\/pheonixsolutions.com\/blog\/#website"},"datePublished":"2011-11-29T06:32:00+00:00","dateModified":"2026-06-21T04:25:15+00:00","breadcrumb":{"@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/pheonixsolutions.com\/blog\/enable-name-based-hosting-for-ssl-sni-module-without-dedicated-ip-for-ssl\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/pheonixsolutions.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Enable Name-Based SSL Hosting Using SNI Without a Dedicated IP Address"}]},{"@type":"WebSite","@id":"https:\/\/pheonixsolutions.com\/blog\/#website","url":"https:\/\/pheonixsolutions.com\/blog\/","name":"Pheonix Solutions","description":"We Empower Your Business Growth","publisher":{"@id":"https:\/\/pheonixsolutions.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/pheonixsolutions.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/pheonixsolutions.com\/blog\/#organization","name":"PheonixSolutions","url":"https:\/\/pheonixsolutions.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/pheonixsolutions.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/pheonixsolutions.com\/blog\/wp-content\/uploads\/2016\/12\/logo.png","contentUrl":"https:\/\/pheonixsolutions.com\/blog\/wp-content\/uploads\/2016\/12\/logo.png","width":454,"height":300,"caption":"PheonixSolutions"},"image":{"@id":"https:\/\/pheonixsolutions.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/PheonixSolutions-209942982759387\/","https:\/\/x.com\/pheonixsolution"]},{"@type":"Person","@id":"https:\/\/pheonixsolutions.com\/blog\/#\/schema\/person\/0ffa33d73c869faec2d50e79c24e3503","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/09bacc0294abee1322a23ab4bc6a0330dd4cb4df707dc9d0b0efeba6c109608b?s=96&r=g","caption":"admin"},"sameAs":["http:\/\/pheonixsolutions.com\/blog"],"url":"https:\/\/pheonixsolutions.com\/blog\/author\/admin\/"}]}},"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p7F4uM-24","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/128","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/comments?post=128"}],"version-history":[{"count":1,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions"}],"predecessor-version":[{"id":10392,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions\/10392"}],"wp:attachment":[{"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/media?parent=128"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/categories?post=128"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pheonixsolutions.com\/blog\/wp-json\/wp\/v2\/tags?post=128"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}