WordPress incorrectly redirects to local IP address?
Domanda
I have my wordpress server set up using php, mysql, and apache on my raspberry pi. I also have a dynamic dns hostname and configured my router's port forwardiing settings.
When trying to access my server from outside of my local LAN, when I type in my dynamic dns host, (for example, my phone on 4G mobile network or at school), the site incorrectly redirects to the server's local IP address: 192.168.0.18 so the page fails to load up.
This is very weird because I also have owncloud set up on my pi and in the same condition I try to access mydynamicdnshost/owncloud, it doesn't redirect me to local IP and the page loads up successfully.
I know this is a really basic problem with wordpress configuration but I simply cannot fix it. So does anyone know that please answer my question. Many thanks!
Soluzione
Change the Site URL in Options Table.
UPDATE `wp_options` SET `option_value` = 'YOUR_SITE_URL' WHERE `option_name` = 'siteurl' OR `option_name` = 'home';
Also change the static URLs in your post content.
UPDATE `wp_posts` SET `post_content` = REPLACE(post_content, '192.168.0.18/YOUR_LOCAL_SITE_URL/', 'YOUR_SITE_URL/');
Don't forget to change the table prefix if its not 'wp_'.
Edit : Access PHPMyAdmin of your server. Contact your Hosting Provider if you are not aware of this.
Select your WordPress Database & Access wp_options table. And change 'siteurl' && 'home' attribute values to your Live Website URL.
Hire a developer if you are not sure what you are doing !
Altri suggerimenti
Inspired @jitendra-rana answer, the direction was correct, but not full.
- Do dump of your database to the file.
- Open dump file and replace all
http://192.168.0.18
tohttp://your_site
- Execute dump file to replace all data in database.
- Clear cache (hard reload) of your site.
Profit.