Искам да внедря TEST, CERT и PROD уеб страници на един уеб хостинг, използвайки един домейн. Уебсайтовете използват заместващи знаци за първия поддомейн.
Имам следния код:
# for TEST
RewriteCond %{HTTP_HOST} (.*).test.domain.com
RewriteCond %{REQUEST_URI} !^/directory3
RewriteRule ^(.*)$ /directory3/$1 [L]
# for CERT
RewriteCond %{HTTP_HOST} (.*).cert.domain.com
RewriteCond %{REQUEST_URI} !^/directory2
RewriteRule ^(.*)$ /directory2/$1 [L]
# for PROD
RewriteCond %{HTTP_HOST} (.*).domain.com
RewriteCond %{REQUEST_URI} !^/directory1
RewriteRule ^(.*)$ /directory1/$1 [L]
Това има 3 проблема:
1) URL адресът се променя в адресната лента на браузъра, така че потребителят да може да види новия URL адрес. Бих искал потребителят да види URL адреса на оригиналните типове
Показани са:
http:\\subdomain1.cert.com\directory2
вместо:
http:\\subdomain1.cert.com
2) Пренаписването на TEST и CERT има Internal Server Error
.
Работи добре, когато заменя заместващия знак за фиксиран поддомейн
3) PROD RweriteCond е винаги валиден (също и за CERT и TEST sub. Това означава, че винаги се препраща към директория1