Question

Redirect IP to domain name

Posted October 10, 2019 23.4k views
Apache

My question is how can I redirect a user to a domain if he uses an IP instead of the domain.

The website I’m asking about is on a LAMP server. I don’t know if it matters, but it uses a virtual host.

1 comment

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
Submit an Answer
3 answers

Hi @Dantcho,

You can achieve this with a rewrite in an htaccess file in your website’s directory.

You will want to create an .htaccess file in that directory with the following (replacing the IP and domain with your own):

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^12\.34\.56\.789$
RewriteRule ^(.*)$ http://www.domainname.com/$1 [L,R=301]

Kind regards,
Kalin

  • This option worked only for home page. In sub pages having same issue. Please tell me the fix.

    • Hi @PrasadPDP,

      You should be able to do it like so :

      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_HOST} ^12\.34\.56\.789/$1
      RewriteRule ^(.*)$ http://www.domainname.com/$1 [L,R=301]
      

      Having said that, please note you can generally do it from the Apache virtual configuration file for the server. From there you can specify the redirection rule as well.

      • Hi, I wonder how to rewrite the rule for https://IP at port 443 to domain.com

        This code is work to redirect ip:80 to domain.com but at ip:443 no, please if you have an idea how to do it let me know

        RewriteEngine On
        RewriteBase /
        RewriteCond %{HTTP_HOST} ^12\.34\.56\.789/$1
        RewriteRule ^(.*)$ http://www.domainname.com/$1 [L,R=301]
        

First of all it worked, so thank you!

Something I want to make a note of for other people is that I had to edit the Apache config for the .htaccess file to work.

hello, i just using the .htaccess already but why my IP is not redirect to my Domain ? Thank you so much