Perhaps this is impossible to achieve but this is what I would like:
Keep URL the same but load page from alternative site.
So MY DOMAIN is what is the input URL in my browser.
The website is loaded through SITE DOMAIN with that specific URL
But MY DOMAIN needs to stay visible and not the long SITE DOMAIN URL
With below settings I see the full URL of SITE DOMAIN but I need to keep it at MY DOMAIN. So the full SITE DOMAIN URL needs to be hidden and only show the short MY DOMAIN.
RewriteCond %{HTTP_HOST} ^(MY DOMAIN)$ [OR]
RewriteCond %{HTTP_HOST} ^www.(MY DOMAIN)$
RewriteRule ^/?$ "http://(SITE DOMAIN)/cms/?option=com_content&view=article&id=150&Itemid=516" [R=301,NC,L]
EDIT:
So to be clear about my question:
example1.com
example2.com
example3.com
etc
Always need to show as display.org
But actually loads this page: http://(SITEDOMAIN)/cms/?option=com_content&view=article&id=150&Itemid=516
Related
I have a site https://www.main.com/sub
I want to move everything with /sub in the URL to a new domain https://www.new.com.
I used this below in the .htaccess but it only redirected that specific page.
RewriteCond %{HTTP_HOST} ^www\.main\.com [NC]
RewriteRule ^sub/(.*) https://www.new.com/$1 [R=301,NC,L]
I need everything after /sub such as /sub/topic1 , /sub/topic2 and so on to also redirect to the new domain. As well as anything past that such as /sub/topic5/product
I already have redirects on www.new.com to take care of any discrepency in URL structure, I just need to get the traffic from /sub to www.new.com
I would like to redirect all users who visit pages on my old domain to the same page on my new domain (only the domain name is changing).
If my old domain is www.OLDDOMAIN.com and my new domain is www.NEWDOMAIN.com then I want to be able to redirect visitors who visit www.OLDDOMAIN.com/c/123/Page-Name to www.NEWDOMAIN.com/c/123/Page-Name (note that these are SEO friendly URLs and not simply sub directories or filenames)
However, I do not want this rule to apply to visitors from a certain IP addresses (lets say 2 IP address 123.123.123.123 and 345.345.345.345 - I appreciate these aren't valid).
I would also like to ensure that all subdomains e.g. files.OLDDOMAIN.com are NOT redirected to files.NEWDOMAIN.com
AND I would like the ability to add exclusions to this rule. E.g. I want to continue to be able to access www.OLDDOMAIN.com/index.php or a subfolder e.g. www.OLDDOMAIN.COM/admin/
The reason for need to do this is the website currently on www.OLDDOMAIN.com is being moved to www.NEWDOMAIN.com. and www.OLDDOMAIN.com is being repurposed for another website. The reason I need the redirects is to retain search engine rankings, at least until the new site is established. The solution therefore needs to be SEO friendly.
Apologies in advance for not supplying any code but I'm not entirely sure where to start with this one...
You can use this code in your DOCUMENT_ROOT/.htaccess file:
RewriteEngine On
# exclude these IPs
RewriteCond %{REMOTE_ADDR} !^(123\.123\.123\.123|345\.345\.345\.345)$
# exclude these URIs
RewriteCond %{REQUEST_URI} !^/(/index\.php|admin/) [NC]
# exclude sub-domains
RewriteCond %{HTTP_HOST} ^(www\.)?OLDDOMAIN\.com$ [NC]
# redirect to new host
RewriteRule ^ http://www.NEWDOMAIN.com%{REQUEST_URI} [R=302,L,NE]
I have a server with 2 domains parked on it. For example abc.com and xyz.com.
The content of my CMS (WP) is on abc.com/content/.
I want to redirect user calling xyz.com to the abc.com/content while preserving the abc.com domain.
Other example:
If I call xyz.com/example-page it should redirect on abc.com/content/example-page without let user see the abc.com domain.
I have the possibility to use mod_rewrite and/or redirect by confixx panel.
You can put this code in your htaccess (which has to be in document root folder)
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www\.)?xyz\.com$ [NC]
RewriteRule ^((?!content/).*)$ /content/$1 [L]
Don't forget to enable mod_rewrite and check if htaccess files are allowed in your Apache configuration
Upon request I have reformulated my question for clarity so others might benefit better from the answers.
I have 3 domains for the company I work for:
bizwizprint.com (the main website that is hosted on a shared server)
bizwizsigns.com (secondary domain with no hosting attached)
boatwiz.com (tertiary domain with no hosting attached)
The goal is to get my second and third domains to redirect to the first domain onto their own respective landing pages.
First Step: At the domain registrar, change the DNS "A Records" of the second and third domains to resolve to the same IP address that the main website is hosted on.
Second Step: Create a "Site Alias" on the main website server for the second and third domains, they will point to the root directory where the main website files reside.
Third Step: Create or edit an .htaccess file that will redirect the requests for the second and third domains and point them to the landing pages that I have created for them.
The question: What rules do I add to htaccess?
Essentially, I would like to have a user type in "boatwiz.com" in the address bar and the browser will literally GO TO "bizwizprint.com/boatwiz.html".
Please note: I do not want any rewrite rules that will change the actual URL to boatwiz.
The reason for this is that it is a temporary thing. Eventually there will be an actual "boatwiz" website and "bizwizsigns" website and they will most likely be very different in structure. I don't want it to appear that I have three domains with all the same content, or have people make any bookmarks that I will need to redirect yet again in the future.
"How do I redirect an external domain (boatwiz.com) to land in a specific page of a new domain (bizwizprint.com/boatwiz.html) without any rewriting?"
So you probably mean that you want an "internal redirect", not the "external redirect", right? I.e. you want e.g. the bizwizsigns.com to stay displayed in the browser Location bar, but show the contents
of bizwizprint.com/signs, right?
1. htaccess only - impossible
Well, using only .htaccess, this is impossible, because the different domain will force the external redirect. Citing the docs:
Absolute URL
If an absolute URL is specified, mod_rewrite checks to see whether the hostname matches the current host. If it does, the scheme and
hostname are stripped out and the resulting path is treated as a
URL-path. Otherwise, an external redirect is performed for the given
URL. To force an external redirect back to the current host, see the
[R] flag below.
2. Iframe trick
What you could do is to use iframe. Put this code at bizwizsigns.com/index.html:
<iframe src="http://bizwizprint.com/signs" width="100%" height="100%"
style="border: 0 none;" frameborder="0">
But there are many downsides of this solution:
the URL will not change in the browser's location bar, even if user clicks within the iframe
browser bookmarks and history will not work as expected.
3. Clever hosting setup (domain aliases into the same dir)
Are you in a hosting environment, or do you have your own server? Sometimes the hosting allows you to make aliases of several domains that are handled by the same local directory tree. In that case, you won - you can write .htaccess so that it handles the requests as internal redirects:
RewriteCond %{HTTP_HOST} bizwizsigns\.com$ [NC]
RewriteRule ^$ /signs [L]
RewriteCond %{HTTP_HOST} boatwiz\.com$ [NC]
RewriteRule ^$ /boats [L]
which will (internally) redirect bizwizsigns.com to /signs (= your content of bizwizprint.com/signs, because you have one hosting server directory for all 3 domains). But if you e.g. want all queries like bizwizsigns.com/<foo> to be redirected to bizwizprint.com/signs/<foo>, you have to be more careful - see the added condition on REQUEST_URI to prevent endless loop:
RewriteCond %{HTTP_HOST} bizwizsigns\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/signs/ [NC]
RewriteRule ^.*$ /signs/$1 [L]
Assuming that you have all 3 domains pointing to the same document root, you just need this in its htaccess file:
RewriteCond %{HTTP_HOST} bizwizsigns\.com$ [NC]
RewriteRule ^$ http://bizwizprint.com/signs [L,R=301]
RewriteCond %{HTTP_HOST} boatwiz\.com$ [NC]
RewriteRule ^$ http://bizwizprint.com/boats [L,R=301]
RewriteCond %{HTTP_HOST} (bizwizsigns|boatwiz)\.com$ [NC]
RewriteRule ^(.+)$ http://bizwizprint.com/$1 [L,R=301]
So if it's just http://bizwizsigns.com/ or http://boatwiz.com/, then you get redirected to http://bizwizprint.com/signs or http://bizwizprint.com/boats. But if you have anything after the last /, like http://bizwizsigns.com/foo/bar.html then you'll get redirected to http://bizwizprint.com/foo/bar.html.
I made simple web page at http://www.domain.com/mobile/{rest of url}
and i want to have http://mobile.domain.com/{rest of url}
On other forums, ppl tolde me to move page, unfortunately it's not possible since that page is using other controllers and models from the rest of page and /mobile/ is not folder, it's name of codeigniter controller that is also defined buy some other htaccess rules
I created subdomain mobile dot domain.com and i want to redirect all traffic from it WITH keeping URL in this form: mobile dot domain dot com/{path}
Try adding this to your htaccess:
RewriteCond %{HTTP_HOST} ^mobile.domain.com$ [NC]
RewriteRule ^(.*)$ /mobile/$1 [L]
If you have other rewrite rules in your htaccess file you may want to add this before the other rules.