Is there a way to make a rewrite rule to file located in a different than DocumentRoot path? Say I have domain http://test.ldt/ with DocumentRoot /home/test_ltd/ and I want that when a file is requested under static. subdomain (http://stats.test.ldt/) it would look for requested file from another path, say /home/static_files/
I was advised to use mod_alias. However, I am not sure how to make it work when I need it with subdomain.
to cristis:
You are not right. For example if these would be mine httpd rules:
ServerName domain.ltd
ServerAlias www.domain.ltd
DocumentRoot /home/domain_ltd
RewriteEngine on
RewriteCond %{HTTP_HOST} static2.domain.ltd
RewriteRule (.*)$ /home/static_files/$1 [L]
DirectoryIndex index.html index.htm index.php
And client would request for static2.domain.ltd/foo.txt, the file would be searched in /home/domain_ltd/home/static_files/$1
To me, it would make the most sense to just define the subdomain as a
VirtualHostthat has aDocumentRootthat points where you wanted it to (Although we’re moving into ServerFault territory here technically, I guess…)e.g.:
But you could do it with a combination of
mod_aliasandmod_rewritetoo, if you wanted. Something like this should work…In
httpd.conf:In
.htaccess(or preferably inhttpd.confin theDirectorysection for/home/domain_tld):