Действительно ли Tomcat6 является требованием? Какая версия Centos? (Я принимаю "Tomcat какой-то" и "текущий Centos", который был бы 5.3 с этой записи),
Вам не нужен jpackage repo, если Вы не хотите Tomcat 6. Кроме того, Centos 5.3 поставлется с openjdk 1.6.0, который передал Java SE 6 TCK.
Просто "конфетка устанавливает tomcat5", должен вытянуть во всех зависимостях, в которых Вы нуждались бы (включая openjdk), многие из которых будут базироваться от jpackage источников. После того как это установлено, все, в чем Вы нуждаетесь, "сервис tomcat5, начинают" запускать его.Примечание: При выполнении веб-контейнера, поскольку корень очень, очень плохо потому что это - значительная угроза безопасности. tomcat5 сервис, установленный версией репозитория, отбросит свои полномочия пользователю 'кота' с более ограниченными полномочиями. Чтобы иметь кота запускаются автоматически, когда начальные загрузки системы, используйте "chkconfig tomcat5 на".
В Вашем случае выше, порт 8080, вероятно, заблокирован брандмауэром по умолчанию. Можно выключить брандмауэр (рекомендуемый только для тестирования возможности соединения, не работайте без брандмауэра в производстве) с "сервисом iptables остановка". Centos обеспечивает и GUI и текстовый инструмент UI (system-config-securitylevel и system-config-securitylevel-tui соответственно) для изменения брандмауэра, или можно использовать iptables непосредственно (см. 'человека iptables').
Можно использовать Обратный Прокси на старом веб-сервере. Это могло бы быть немного работы для установки, но, пока ЕЕ DNS актуален, Вы будете в порядке.
То, что произойдет:
Если Вы выполняете Apache, изучаете mod_proxy. Если Вы выполняете IIS, изучаете ISAPI, Переписывают для получения этого вида функциональности.
(обратите внимание, что DNS на старом веб-сервере должен быть актуальным, если Вы хотите проксировать использование доменного имени. Иначе проксируйте его непосредственно к IP-адресу и удостоверьтесь, что хост слушает на IP без имени хоста),
Я использую iptables для этого, когда я должен сделать это; быстрый бит DNAT/SNAT и всего Вашего трафика волшебно вновь появляется, где это должно быть. Если у Вас есть реальная потребность поддержать исходные IP-адреса, обратный прокси может помочь путем установки соответствующих заголовков, но это требует, чтобы много faffing вокруг в обоих концах удостоверилось, что все это совпадает, таким образом, я обычно не волнуюсь об этом для чего-то как миграция, поскольку это является переходным, и понижающий TTLs обрабатывает большую часть из него.
Моя компания просто сделала это с несколькими великоватыми веб-сайтами. Основная процедура, которую мы выполнили, была:
Для Apache необходимо, вероятно, использовать mod_rewrite для перенаправления, таким образом, можно сохранить URIs, который требует клиент. Простая реализация была бы:
# old server
<VirtualHost 1.1.1.1:80>
ServerName www.domain.com
RewriteEngine on
RewriteRule ^(.*)$ http://www-new.domain.com$1 [L]
</VirtualHost>
# new server
<VirtualHost 1.1.1.2:80>
ServerName www.domain.com
ServerAlias www-new.domain.com
</VirtualHost>
Это сделает 302 временных перенаправления для www.domain.com/anything на www-new.domain.com/anything. Вы хотите, чтобы это было временным, потому что Вы, вероятно, хотите, чтобы поисковые системы только индексировали www.domain.com, не www-new.domain.com.
После того как изменение DNS для www.domain.com распространило к Вашей удовлетворенности, можно или вывести www-новый в целом или мягко упростить любого использующего его назад для www с другим перенаправлением. Это - почти тот же процесс как выше; настройте старый сервер, чтобы обработать www-новый, изменить DNS для www-нового, чтобы указать на старый сервер и настроить перенаправление на старом сервере, отправляющем www-новый трафик в www:
# old server
<VirtualHost 1.1.1.1:80>
ServerName www-new.domain.com
RewriteEngine on
RewriteRule ^(.*)$ http://www.domain.com$1 [R=301,L]
</VirtualHost>
# new server
<VirtualHost 1.1.1.2:80>
ServerName www.domain.com
# ServerAlias removed, no longer needed
</VirtualHost>
На этот раз Вы хотите сделать постоянное 301 перенаправление, снова к подсказке в поисковых роботах поисковой системы, что www.domain.com является сайтом, который Вы хотите, чтобы они индексировали.
Хорошо, на основе того, какой рекомендуемый @Farseeker, я настроил следующую конфигурацию на старом сервере Apache для передачи запросов на новый сервер:
<VirtualHost *>
UseCanonicalName Off
ServerAdmin me@domain.com
ServerName domain.com
DocumentRoot /var/www/
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://domain.com/
ProxyPassReverse / http://domain.com/
</VirtualHost>
Для проверки старый сервер имел корректный адрес, я вставил запись /etc/hosts
:
1.2.3.4 domain.com
Я также должен был включить Apache mod_proxy
и mod_proxy_http
модули и перезагрузка конфигурация:
a2enmod proxy
a2enmod proxy_http
/etc/init.d/apache force-reload
It's an old thread but maybe it will help someone:
In addition to answers of Mark Henderson (mod_proxy) OR James Sneeringer (302,301 redirect to new subdomains), one more thing could be added regarding database sync when moving big applications.
If your web project uses a database (ex. MySQL), before switching the DNS, make sure the applications (ex. PHP) from both servers are connecting to the same database. So that the read and writes are going to the same place and you don't have to deal with different DB sync tools afterward.
This would (most probably) affect the loading time on one server but for the switch period this can be accepted.
In case the DB server is not accessible from outside, you could setup also the mysql_proxy on the web server which has access to it and is accessible from external IPs.