#regex #apache #.htaccess #mod-rewrite #redirect
#регулярное выражение #apache #.htaccess #мод-перезапись #перенаправление
Вопрос:
Я хочу показать файлы на моем поддомене, эти файлы расположены в основном домене.
Я хочу что-то вроде этого
domain.com/some-folder/
subdomain.domain.com/some-folder/ (" folder doesn't really exist")
domain.com/some-file.html
subdomain.domain.com/some-file.html ("file doesn't really exist")
domain.com/some-folder/with-an-inside-file.html
subdomain.domain.com/some-folder/with-an-inside-file.html ("file and folder don't really exist")
Я видел похожий idee на apple.com
images.apple.com/uk / будет отображаться на той же странице, что и apple.com/uk / и images.apple/uk перенаправит на apple.com/uk / (обратите внимание, что во втором примере нет косой черты)
Мой текущий код до сих пор (.htaccess)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://www.domain.com/$1 [L]
Этот код перенаправит на domain.com / но как я могу просто показать содержимое
domain.com / без перенаправления на domain.com / ?
Ответ №1:
мод-прокси
Если файлы находятся на разных серверах, вам придется использовать mod-proxy
, который может быть установлен, а может и не быть установлен. Если он установлен, используйте P
флаг в существующем правиле:
RewriteRule ^(.*)$ http://www.domain.com/$1 [P]
Ссылка
Комментарии:
1. Спасибо, рад, что это помогло. 🙂
Ответ №2:
Почему бы просто не установить для поддомена тот же корень документа? Намного проще 😉 По ряду причин в настоящее время у меня довольно много таких псевдонимов поддоменов, и я могу сказать вам, что они отлично работают.
Комментарии:
1. Как я могу этого добиться?
2. Когда вы настраиваете поддомен, у вас должен быть запрошен корень документа. Однако это зависит от вашего хозяина, поэтому вы должны спросить их.
3. Оке, спасибо за ваш ответ, но разве в любом случае этого нельзя достичь с помощью htaccess?
4. Возможно, если вы переписываете туда, где находятся фактические файлы, а не перенаправляете.