Apache httpd.conf for redirecting ip to hostname
apache, redirect, virtualhost
Solution
Ok. You are missing a rewrite condition
<VirtualHost XX.XX.XX.XX>
DocumentRoot "/var/www/html"
#ServerName ayz-abc.mysite.com/
# Other directives here
RewriteEngine On
RewriteCond %{HTTP_HOST} !^ayz-abc.mysite.com$
RewriteRule /.* https://ayz-abc.mysite.com/ [R]
</VirtualHost>
If you don't include this condition it will redirect even with the hostname
Problem
I have external IP and hostname configured for my machine. Inside the application, I am using only the domain names to access the APIs. So when i try to access my APIs through IP address, it shows 302 Moved temporarily error. So, for request(for Homepage) that hits the server with IP address, It should redirect to hostname. That is, when user hits https://XX.XX.XX.XX/main it should be redirected to https://ayz-abc.mysite.com/main For this I tried using the redirect in httpd.conf of apache. ``` <VirtualHost XX.XX.XX.XX> DocumentRoot "/var/www/html" #ServerName ayz-abc.mysite.com/ # Other directives here RewriteEngine On RewriteRule /.* https://ayz-abc.mysite.com/ [R] </VirtualHost> ``` I have also tried with the following ``` <VirtualHost *.portnum> DocumentRoot "/var/www/html" RewriteEngine On RewriteCond %{HTTPS} on RewriteRule https://XX.XX.XX.XX/main https://ayz-abc.mysite.com/main [R=301,L] </VirtualHost> ``` Plsssss help me.