{"id":24077,"date":"2015-06-09T21:01:43","date_gmt":"2015-06-09T13:01:43","guid":{"rendered":"https:\/\/www.hongkiat.com\/blog\/?p=24077"},"modified":"2024-04-04T02:19:47","modified_gmt":"2024-04-03T18:19:47","slug":"access-localhost-public-address","status":"publish","type":"post","link":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/","title":{"rendered":"How to Make Your Local Server Publicly Accessible"},"content":{"rendered":"<p>For nearly a decade, I\u2019ve navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local development environments and live testing scenarios. Working locally is efficient and speedy, yet it lacks the capability for remote viewing. Moreover, migrating work often involves intricate database operations, such as renaming tables and adjusting values.<\/p>\n<p>In this article, I\u2019m excited to share a straightforward method that allows you to <strong>operate a local server<\/strong> which can be <strong>accessed from your phone and other mobile devices<\/strong> without a hitch, and even share your projects over the Internet. This means you can showcase your work to clients directly from the comfort of localhost.<\/p>\n<h2>Setting Up Your Local Development Environment with Vagrant<\/h2>\n<p>Not long ago, I shared insights on Hongkiat about <a href=\"https:\/\/www.hongkiat.com\/blog\/install-wordpress-locally-vagrant\/\">using Vagrant<\/a> for local development, so I\u2019ll touch only on the essentials here. For an in-depth guide, do check out that article!<\/p>\n<p>First off, download and install <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/www.virtualbox.org\/wiki\/Downloads\">VirtualBox<\/a> and <a rel=\"nofollow noopener\" target=\"_blank\" href=\"http:\/\/www.vagrantup.com\/downloads.html\">Vagrant<\/a>. These free tools help you set up a virtual machine to run your server smoothly.<\/p>\n<p>Next, create a \u201cWebsites\u201d folder in your main user directory to organize your projects. This will be <code>\/Users\/[username]\/Websites<\/code> on macOS and <code>C:\/Users\/[username]\/Websites<\/code> on Windows.<\/p>\n<p>Inside this directory, make a new folder named <code>wordpress<\/code> for your virtual machine. The structure allows each site within <code>Websites<\/code> to operate on its own virtual machine. Although you could technically run multiple sites on a single machine, I prefer organizing them by platform \u2013 such as WordPress, Laravel, Custom.<\/p>\n<p>This guide will focus on setting up a WordPress site.<\/p>\n<p>In the <code>WordPress<\/code> folder, we\u2019ll need two key files: <code>Vagrantfile<\/code> and <code>install.sh<\/code> for configuring our virtual machine. Jeffrey Way has provided excellent starter versions of these; grab his <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/gist.github.com\/JeffreyWay\/9244801\">Vagrantfile<\/a> and <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/gist.github.com\/JeffreyWay\/9244714\">install.sh<\/a>.<\/p>\n<p>Open your terminal, navigate to the <code>WordPress<\/code> directory, and run <code>vagrant up<\/code>. It might take some time for the box to download and install, so why not enjoy a coffee and explore <a href=\"https:\/\/www.hongkiat.com\/blog\/40-most-wanted-wordpress-tricks-and-hacks\/\">60+ WordPress tips<\/a> in the meantime?<\/p>\n<p>After completion, visiting <code>192.168.33.21<\/code> should display your site. Your main content folder will be the html directory inside the WordPress folder, where you can begin to add files, install WordPress, or undertake any development tasks you have in mind.<\/p>\n<p>For more detailed instructions on setting up virtual hosts and domain mapping like <code>mytest.dev<\/code>, make sure to consult the complete <a href=\"https:\/\/www.hongkiat.com\/blog\/install-wordpress-locally-vagrant\/\">Vagrant guide<\/a>.<\/p>\n<h2>Testing Local Websites on Mobile Devices with Gulp<\/h2>\n<p>As you develop a website, considering how it responds on various devices is crucial. You can mimic smaller screens by adjusting your browser window, but this doesn\u2019t fully replicate the experience, especially when considering high-resolution retina displays.<\/p>\n<p>The goal is to view your local site on your mobile devices seamlessly, which is straightforward as long as your devices share the same network.<\/p>\n<p>We\u2019ll leverage <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/gulpjs.com\/\">Gulp<\/a> and <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/browsersync.io\/docs\/gulp\/\">Browsersync<\/a> to achieve this. Gulp streamlines the development process through automation, while Browsersync offers a robust solution for creating a local server that synchronizes actions like scrolling, clicks, and form inputs across multiple devices.<\/p>\n<h2>How to Get Started with Gulp<\/h2>\n<p>Getting Gulp up and running is straightforward. Simply visit the <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/github.com\/gulpjs\/gulp\/blob\/master\/docs\/getting-started.md\">Getting Started<\/a> guide for detailed instructions. First, you\u2019ll need NPM (Node Package Manager), which comes with Node.js. For installation guidance, head to the <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/nodejs.org\/\">Node.js website<\/a>.<\/p>\n<p>After installing Gulp globally with the command <code>npm install --global gulp<\/code>, the next step is to integrate it into your project. Do this by running <code>npm install --save-dev gulp<\/code> in your project\u2019s root directory and then create a <code>gulpfile.js<\/code> file there.<\/p>\n<p>For now, we\u2019ll start with a simple line in that file to confirm our use of Gulp.<\/p>\n<pre>var gulp = require('gulp');<\/pre>\n<p>To explore the full potential of Gulp, like script concatenation, Sass and LESS compilation, image optimization, and more, take a look at our <a href=\"https:\/\/www.hongkiat.com\/blog\/getting-started-with-gulp-js\/\">Guide To Gulp<\/a>. This guide will mainly focus on the process of setting up a server.<\/p>\n<h2>Integrating Browsersync with Gulp<\/h2>\n<p>Adding Browsersync to your Gulp setup is a simple two-step process. First, we install it using npm, and then we configure it in our Gulpfile.<\/p>\n<p>In your project\u2019s root directory, execute the <code>npm install browser-sync gulp --save-dev<\/code> command in the terminal to install Browsersync. Next, open your Gulpfile and add the following code:<\/p>\n<pre>var browserSync = require('browser-sync').create();<\/pre>\n<p>This line informs Gulp that Browsersync will be part of our toolset. The next step is to set up a Gulp task to specify how Browsersync should function.<\/p>\n<pre>gulp.task('browser-sync', function() {\r\n browserSync.init({\r\n\t proxy: \"192.168.33.21\"\r\n\t });\r\n });<\/pre>\n<p>After configuring, launching a server is as simple as typing <code>gulp browser-sync<\/code> in the terminal. You\u2019ll see a display similar to the image below.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg\" alt=\"Browsersync Interface\" width=\"311\" height=\"152\"><\/figure>\n<p>The interface provides four key URLs, each serving a distinct purpose:<\/p>\n<ul>\n<li><strong>Local<\/strong>: This URL accesses the server from the same device. You can use <code>192.168.33.21<\/code> or the Browsersync-provided address.<\/li>\n<li><strong>External<\/strong>: Use this URL on any device within the same network to access the site, be it your smartphone, tablet, or another computer.<\/li>\n<li><strong>UI<\/strong>: This URL leads to the server\u2019s options menu, where you can monitor connections, manage network settings, view history, and synchronize actions across devices.<\/li>\n<li><strong>External UI<\/strong>: Similar to the UI, but available on any network-connected device for remote access and control.<\/li>\n<\/ul>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/ui.jpg\" alt=\"Browsersync UI Options\" width=\"693\" height=\"817\"><\/figure>\n<h2>Advantages of Using Browsersync<\/h2>\n<p>Having introduced Browsersync, you might wonder: why opt for it specifically? It\u2019s true that you can access a local server using an IP address like 192.168.33.21 from any device within the network. However, this approach requires setting up WordPress or similar platforms directly at this address.<\/p>\n<p>My preference is to employ virtual hosts, crafting domains like wordpress.local or myproject.dev, which resolve only within the local network. This setup means you can\u2019t simply access wordpress.local on your mobile and expect it to mirror the local desktop environment.<\/p>\n<p>With these steps covered, we\u2019ve successfully set up a site accessible from any device on our local network. The next step? Extending our reach to share our work globally over the internet.<\/p>\n<h2>Global Sharing with ngrok<\/h2>\n<p><a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/ngrok.com\/\">ngrok<\/a> offers a powerful solution for creating secure tunnels to your localhost. By signing up for a free account, you gain access to features like password-protected tunnels, TCP, and the ability to run multiple tunnels simultaneously.<\/p>\n<h2>How to Install ngrok<\/h2>\n<p>First, visit the <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/ngrok.com\/download\">ngrok download page<\/a> and download the appropriate version for your system. You can run ngrok directly from the downloaded folder or move it to a universal location on your system for easier access. For Mac\/Linux users, you can achieve this with the command:<\/p>\n<pre>sudo mv ngrok \/usr\/local\/bin\/ngrok<\/pre>\n<p>Should you encounter a directory error, simply create the necessary folders to proceed.<\/p>\n<h2>Getting Started with ngrok<\/h2>\n<p>The setup for ngrok is refreshingly straightforward. After your server is up and running through Gulp, note the port number it operates on. For instance, if your local server is at <code>http:\/\/localhost:3000<\/code>, it\u2019s utilizing port 3000. To establish an ngrok tunnel, execute this command in a new terminal window:<\/p>\n<pre>ngrok http 3000<\/pre>\n<p>This command generates a secure tunnel to your localhost. The output will resemble the following, showcasing an accessible URL:<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/tunnel.jpg\" alt=\"ngrok tunnel URL\" width=\"551\" height=\"153\"><\/figure>\n<p>The \u201cForwarding\u201d URL displayed is your key to accessing your local server from any location worldwide.<\/p>\n<h2>Wrapping Up<\/h2>\n<p>By now, we\u2019ve achieved three significant milestones:<\/p>\n<ul>\n<li>Efficient local development and project management<\/li>\n<li>Ability to preview our website on any device connected to our network<\/li>\n<li>Capability to share our work globally through a simple link<\/li>\n<\/ul>\n<p>These steps streamline the development process, allowing us to concentrate on building rather than on the tedious tasks of synchronizing local and test servers, migrating databases, and other similar challenges.<\/p>","protected":false},"excerpt":{"rendered":"<p>For nearly a decade, I\u2019ve navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local development environments and live testing scenarios. Working locally is efficient and speedy, yet it lacks the capability for remote viewing. Moreover, migrating work often involves intricate database operations, such as renaming tables and&hellip;<\/p>\n","protected":false},"author":143,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3400],"tags":[4656],"topic":[4521],"class_list":["entry-content","is-maxi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.8 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Make Your Local Server Publicly Accessible - Hongkiat<\/title>\n<meta name=\"description\" content=\"For nearly a decade, I&#039;ve navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Make Your Local Server Publicly Accessible\" \/>\n<meta property=\"og:description\" content=\"For nearly a decade, I&#039;ve navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/\" \/>\n<meta property=\"og:site_name\" content=\"Hongkiat\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hongkiatcom\" \/>\n<meta property=\"article:published_time\" content=\"2015-06-09T13:01:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-03T18:19:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg\" \/>\n<meta name=\"author\" content=\"Daniel Pataki\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:site\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Pataki\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/\"},\"author\":{\"name\":\"Daniel Pataki\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/76d3b3baacd688e9a0d7bd24553519bc\"},\"headline\":\"How to Make Your Local Server Publicly Accessible\",\"datePublished\":\"2015-06-09T13:01:43+00:00\",\"dateModified\":\"2024-04-03T18:19:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/\"},\"wordCount\":1198,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/access-localhost-public-address\\\/browser-sync.jpg\",\"keywords\":[\"Localhost and Webserver\"],\"articleSection\":[\"Hosting\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/\",\"name\":\"How to Make Your Local Server Publicly Accessible - Hongkiat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/access-localhost-public-address\\\/browser-sync.jpg\",\"datePublished\":\"2015-06-09T13:01:43+00:00\",\"dateModified\":\"2024-04-03T18:19:47+00:00\",\"description\":\"For nearly a decade, I've navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/access-localhost-public-address\\\/browser-sync.jpg\",\"contentUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/access-localhost-public-address\\\/browser-sync.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/access-localhost-public-address\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Make Your Local Server Publicly Accessible\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"name\":\"Hongkiat\",\"description\":\"Tech and Design Tips\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\",\"name\":\"Hongkiat.com\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"contentUrl\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"width\":1200,\"height\":799,\"caption\":\"Hongkiat.com\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hongkiatcom\",\"https:\\\/\\\/x.com\\\/hongkiat\",\"https:\\\/\\\/www.pinterest.com\\\/hongkiat\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/76d3b3baacd688e9a0d7bd24553519bc\",\"name\":\"Daniel Pataki\",\"description\":\"Daniel is a writer for Hongkiat.com. When not coding or writing, you'll find him playing board games or running with his dog. You can drop him a line on Twitter or visit his personal website.\",\"sameAs\":[\"http:\\\/\\\/danielpataki.com\\\/\"],\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/author\\\/danielpataki\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Make Your Local Server Publicly Accessible - Hongkiat","description":"For nearly a decade, I've navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local","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:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/","og_locale":"en_US","og_type":"article","og_title":"How to Make Your Local Server Publicly Accessible","og_description":"For nearly a decade, I've navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local","og_url":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/","og_site_name":"Hongkiat","article_publisher":"https:\/\/www.facebook.com\/hongkiatcom","article_published_time":"2015-06-09T13:01:43+00:00","article_modified_time":"2024-04-03T18:19:47+00:00","og_image":[{"url":"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg","type":"","width":"","height":""}],"author":"Daniel Pataki","twitter_card":"summary_large_image","twitter_creator":"@hongkiat","twitter_site":"@hongkiat","twitter_misc":{"Written by":"Daniel Pataki","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#article","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/"},"author":{"name":"Daniel Pataki","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/76d3b3baacd688e9a0d7bd24553519bc"},"headline":"How to Make Your Local Server Publicly Accessible","datePublished":"2015-06-09T13:01:43+00:00","dateModified":"2024-04-03T18:19:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/"},"wordCount":1198,"commentCount":6,"publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg","keywords":["Localhost and Webserver"],"articleSection":["Hosting"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/","url":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/","name":"How to Make Your Local Server Publicly Accessible - Hongkiat","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#primaryimage"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg","datePublished":"2015-06-09T13:01:43+00:00","dateModified":"2024-04-03T18:19:47+00:00","description":"For nearly a decade, I've navigated the challenges of developing websites, with one of the trickiest aspects being the coordination between local","breadcrumb":{"@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#primaryimage","url":"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg","contentUrl":"https:\/\/assets.hongkiat.com\/uploads\/access-localhost-public-address\/browser-sync.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hongkiat.com\/blog\/access-localhost-public-address\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hongkiat.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Make Your Local Server Publicly Accessible"}]},{"@type":"WebSite","@id":"https:\/\/www.hongkiat.com\/blog\/#website","url":"https:\/\/www.hongkiat.com\/blog\/","name":"Hongkiat","description":"Tech and Design Tips","publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hongkiat.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hongkiat.com\/blog\/#organization","name":"Hongkiat.com","url":"https:\/\/www.hongkiat.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","contentUrl":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","width":1200,"height":799,"caption":"Hongkiat.com"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hongkiatcom","https:\/\/x.com\/hongkiat","https:\/\/www.pinterest.com\/hongkiat\/"]},{"@type":"Person","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/76d3b3baacd688e9a0d7bd24553519bc","name":"Daniel Pataki","description":"Daniel is a writer for Hongkiat.com. When not coding or writing, you'll find him playing board games or running with his dog. You can drop him a line on Twitter or visit his personal website.","sameAs":["http:\/\/danielpataki.com\/"],"url":"https:\/\/www.hongkiat.com\/blog\/author\/danielpataki\/"}]}},"jetpack_featured_media_url":"https:\/\/","jetpack_shortlink":"https:\/\/wp.me\/p4uxU-6gl","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/24077","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/users\/143"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/comments?post=24077"}],"version-history":[{"count":4,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/24077\/revisions"}],"predecessor-version":[{"id":71664,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/24077\/revisions\/71664"}],"wp:attachment":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/media?parent=24077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/categories?post=24077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/tags?post=24077"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/topic?post=24077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}