2016-07-15 2 views
1

Я ищу способ перенаправления всего веб-сайта в один домен. Я хочу сделать это в файле httpd.conf. Например, VirtualHost я выгляжу так:Перенаправить все URL-адреса на одну страницу в httpd.conf

<VirtualHost xx.xx.xx.xx> 
ServerName website.com 
ServerAdmin [email protected] 
ScriptAlias /cgi-bin/ /usr/local/apache2/htdocs/cgi-bin/ 
DocumentRoot /usr/local/apache2/htdocs/website 
CustomLog logs/website/access_log combined 
ErrorLog logs/website/error_log 
Redirect/http://newwebiste.com 
Redirect /xxx http://newwebiste.com 
</VirtualHost> 

В настоящее время перенаправленные выше все еще содержат полный URL.

Так что если я хочу http://webiste.com/test/thispage.html Я бы переадресовал на http://newwebsite.com/test/thispage.html. Я просто хочу, чтобы он пошел на сайт newwebsite.com и потерял все остальное.

Так ..

http://webiste.com/test/thispage.html

в

http://newwebsite.com

Что мне нужно добавить в httpd.conf для достижения этой цели?

Спасибо,

ответ

0

Удалить

Redirect/http://newwebiste.com 
Redirect /xxx http://newwebiste.com 

и добавить

RewriteRule^http://newwebsite.com [L,R=301] 
+0

Я получаю предупреждение о недопустимой команде при перезапуске службы httpd. См. Ниже –

+0

Ошибка синтаксиса в строке 1526 /usr/local/apache2/conf/httpd.conf: Недопустимая команда 'RewriteRule', возможно, с ошибкой или определена модулем, не включенным в конфигурацию сервера –

+0

Я думаю, что сервер Apache должен обновляться. Модификация перезаписи не существует, поэтому все это не получилось. –

2

Как вы заметили Перенаправление ловит все и посылает тот же URI к цели, которая является то, что вы не хотите , поэтому вы будете использовать RedirectMatch, чтобы соответствовать всем возможным запросам, но не добавляли ничего к целевому URL-адресу.

Таким образом, вы можете просто использовать:

RedirectMatch^http://newsite.example.com/

В качестве примечания о mod_rewrite: Я, конечно, не рекомендую mod_rewrite в соответствии с рекомендациями других, если вы на самом деле не есть задача под рукой, которая требует сложность, которую может предложить только mod_rewrite, и это не так.

Сторона Примечание 2: Для примера лучше использовать доменное имя "example.com", так как оно не является допустимым доменом и оно постоянно зарезервировано для примера.

Смежные вопросы