Так что да, у вас должен быть второй сервер STAGE. Что я делаю, так это помещаю свой код в CVS на моем компьютере разработчика и регулярно выполняю коммиты. Когда я готов отправить версию на сервер «STAGE», я просматриваю файлы, которые хочу поместить в STAGE, и отмечаю их STAGE:
тег cvs -F STAGE
Затем я иду на сервер STAGE и делаю обновление с флагом STAGE, чтобы получить версию файлов STAGE:
cvs up -r ЭТАП
Это также устанавливает для этих файлов липкий тег «STAGE», поэтому в будущем я могу просто оставить тег STAGE отключенным, когда я обновляю свой сервер сцены:
cvs up
наконец, когда я проверил свой код на сервере STAGE, я перекатил его на рабочий сервер с помощью rsync ...
У нас есть несколько разработчиков, работающих вместе, поэтому поддержание стабильной версии STAGE может оказаться непростым делом. В этом случае, если у меня есть небольшие изменения в одном или двух файлах, я просто отправлю их по отдельности на рабочий сервер ..
Наконец, чтобы убедиться, что я знаю, что находится на моих производственных серверах, после того, как я отправляю файл или файлы на рабочий сервер, я отмечаю все файлы на моем рабочем сервере как RELEASE, а также как RELEASE20090713 или любой другой текущий дата ... Таким образом, у меня есть движущиеся снимки, хотя время, которое я могу получить при необходимости. Обратите внимание, что это не обновляет прикрепленный тег, поэтому мой обычный старый
cvs up
на сценическом сервере все еще получает последние файлы STAGE.
Теперь в вашем случае, что касается жестко закодированных URL-адресов ... Вы уже знаете ... плохо плохо плохо ... так что исправляйте их по ходу дела ... Но вы можете использовать переписывание apache URL для перезаписи URL-адреса на STAGE для связи с пользовательским портом TCP.
Если у вас есть интеллектуальное сетевое устройство, такое как маршрутизатор cisco, вы можете настроить его на выполнение PAT (трансляция адресов портов) для ваших IP-адресов. Порт 80 может перенаправлять на ваш обычный производственный веб-сервер, а порт 8080 может пересылать на ваш сервер STAGE (его порт 80). Тогда все, что вам нужно сделать, - это переписать apache do URL на вашем сервере STAGE и добавить 8080 ко всем именам узлов, которые он видит. Теперь все ваши сообщения и ссылки будут отправляться на правильные серверы STAGE, и ваши настройки Apache также могут быть точно такими же.