We have IIS 7.5 and we've installed WordPress (v3.3.1) through the Microsoft Web Platform installer (http://www.microsoft.com/web/wordpress).

All works fine when we load WP locally (e.g. http://localhost/mywordpresssite), the graphics load fine. But when I enter the IP address or hostname accessing the site from a machine other than locally, none of the graphics or formatting appear.

Is there some configuration I have to set to get this working?

I've noticed that all the graphics etc. are hard-wired to 'localhost', which explains why I'm losing the images when accessing from a remote machine. e.g.



  • OK but this talks about moving a wordpress site...I just created a new one but none of the links/images are loading because they have static URLs pinned to localhost... Mar 30, 2012 at 19:41
  • codex.wordpress.org/… your domain URL is thus in desperate need of changing from localhost to a globally accessible IP/host. You have moved virtually.
    – soulseekah
    Mar 30, 2012 at 19:42

2 Answers 2


Check that your WordPress Address and Site Address are correct under Settings > General. ie., if you want it to be viewable on another computer, this shouldn't say "localhost" anywhere...

  • So easy when you know how...DUH rookie mistake :) THANK YOU :) Mar 30, 2012 at 19:48
  • 1
    Just keep in mind that URLs in content, etc. will still be hardcoded to localhost if you ever inserted them when under localhost. This solution is great for when you have had no chance to create any content yet, and is incomplete when dealing with existing content, menus, some plugin and theme settings, etc.
    – soulseekah
    Mar 30, 2012 at 19:53
  • +1, Yes, there are times when some MySQL mojo is necessary when the settings weren't quite right to begin with.
    – k3davis
    Mar 30, 2012 at 20:11

This may not be the right solution, but I had the symptoms (styles and images not loading) in a different case: Take a look at the XML generated by Wordpress for web.config. At least in some cases, it is incorrect. I've worked it through in the multisite case (different from this case) and had to change Rule 4 action to point to url="{R:2}" and Rule 5 to point to url="{R:3}".

<rule name="WordPress Rule 4" stopProcessing="true">
   <match url="^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*)" ignoreCase="false" />
    <action type="Rewrite" url="{R:2}" />
<rule name="WordPress Rule 5" stopProcessing="true">
    <match url="^([_0-9a-zA-Z-]+/)?([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
     <action type="Rewrite" url="{R:3}" />

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.