Насколько я понимаю Ваш вопрос, Вы просите перенаправление портов от апача в порте 80 Вашему коту appserver достигающий 8 080 портов, одновременно имеете свою апачскую маску порт в http заголовках и сделали пользователей, не должны явно вводить номер порта в URL просмотра. Этому нужно Приложение, образующее мост между Apache и Вашим сервером приложений кота, работающим на том же хосте. Предположение, что Вы собираетесь разместить апачский virtualhost на хосте, необходимо настроить dns
к точечному приложению CNAME
к хосту.
Можно сделать это во многих отношениях. Один из методов без определенного порядка (но может быть с точки зрения легкости установки относительно),
mod_rewrite и mod_proxy апачский модуль. Легкий установить. Только включает httpd конфигурацию. Просто действия как прокси переписывают для трафика HTTP в порте 80 предназначенных для виртуального хоста кота http сервер. До сих пор я нахожу, что это круто и просто с точки зрения администрирования. Я позволю developer/app-manager ответственному за установку кота заботиться об обновлении файла server.xml.
Ссылка: пример http://tomcat.apache.org/tomcat-5.5-doc/proxy-howto.html:
ServerName yourapp.yourdomain.com
ServerAlias yourapp.*
ProxyRequests Off
ProxyPreserveHost On
Order deny,allow
Allow from all
ProxyPass /webapp http://localhost:8080/webapp
ProxyPassReverse /webapp http://localhost:8080/webapp
Order allow,deny
Allow from all
Выполнение JSP Через Apache с помощью mod_jk2 модуль. Носитель трудно. Вовлекает сложную установку параметра в httpd конфигурацию, полезную, если тот же виртуальный хост должен выполнить другие сценарии, такие как php/perl/cgi кроме передачи трафика к серверу Tomcat. В этих ссылках существует превосходное ПРАКТИЧЕСКОЕ РУКОВОДСТВО.
Ссылка:
http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
http://people.apache.org/~mturk/docs/article/ftwai.html
http://www.mulesoft.com/apache-tomcat-mod-jk-connector-configuration
Выполненный JSP через Apache mod_proxy_ajp модуль: Ее подобное вышеупомянутому подходу, но этот модуль выравнивает с использованием ajp связь протокола с котом вместо http ради непротиворечивости.
Ссылки:
Решите это на сетевом уровне хоста. Использовать iptables
для перенаправления всего входящего трафика в порте 80 связывают для портирования 8080 по умолчанию. Включает понимание и управление iptables настройками. Одна установка времени, но трудный поддержать. Может стать проблематичным, если необходимо разместить другой Apache virtualhosts
на той же машине.
Пример:
iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A OUTPUT -d localhost -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A OUTPUT -d $(/bin/hostname) -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -A PREROUTING -d $(/bin/hostname) -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables-save
Я использовал бы замены процесса здесь:
diff <(sed 's/@[^[]*/@/' old) <(sed 's/@[^[]*/@/' new)
Отфильтруйте файлы данных - затем выполняют разность-:
sed 's/\@.*\[/@[/' file1 > file1.filt
sed 's/\@.*\[/@[/' file2 > file2.filt
diff file1.filt file2.filt
Альтернатива должна использовать diff
имеет опцию-I. Любые строки, которые соответствуют шаблону, проигнорированы в различном сравнении. Выберите шаблон, который исключительно выберет строки, которые не должны быть сравнены. например.
diff -I 'dataexplorer.bigindex' file1 file2
Я предполагаю, что Вы используете Bash.
если v="model.Field@d6b0d6b[fieldName"
затем можно сделать следующее:
# Extract the right side of "$v"
r="${v#*[}"
# Extract the left side of "$v"
l="${v%@*}"
# Combine
new_v="$l@[$r"; new_v1="$l$r"
Можно использовать "$new_v", или "$new_v1" зависит от того, хотите ли Вы и [или нет.
Как г-н Wijsman прокомментировал, мой ответ не отвечает на вопрос. Корректный, я не обращал много внимания на заголовок. Давайте зафиксируем его и перенесем код выше со следующей функцией для печати данных единственного файла как требуется
pf()
{
while read -r line; do
# This is a bit fancy but does the same thing as the code above.
printf '%s\n' "${line%@*}${line#*[}"
done < "$1"
}
Теперь, мы можем diff
эти два файла при помощи следующей команды:
diff <(pf file1.txt) <(pf file2.txt)
Вот Демонстрационный вывод
rany$ cat file1.txt
model.Field1@__A__[fieldName
model.FieldIAMDIFFERENT@__B__[fieldName
model.Field1@__C__[fieldName
rany$ cat file2.txt
model.Field1@__C__[fieldName
model.Field1@__D__[fieldName
model.Field1@__E__[fieldName
rany$ diff <(pf file1.txt) <(pf file2.txt)
2c2
< model.FieldIAMDIFFERENTfieldName
---
> model.Field1fieldName
rany$
Как Вы видите, то, что строки отличаются между и [игнорируется, и единственная строка, которая отличается между файлами, является этим:
модель. FieldIAMDIFFERENTfieldName
Я сожалею о том, что не было обращено особое внимание на Ваш заголовок как часть вопроса.