Хочу сделать чтобы при запросе http://192.168.57.4 принудительно происходил редирект на https://192.168.57.4При подключении на 443 или на 80 - всё работает ок.
Подскажите плиз, куда копать!
# cat server.xml
<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Service name="Tomcat-Apache">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="80"
redirectPort="443"
minProcessors="5"
maxProcessors="75"
enableLookups="false"
acceptCount="100" debug="0"
useURIValidationHack="false"
disableUploadTimeout="true">
</Connector>
<Engine className="org.apache.catalina.connector.warp.WarpEngine"
name="Apache"
defaultHost="localhost"
debug="0">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="tizona."
suffix=".log"
timestamp="true"/>
<Host name="192.168.57.4"
debug="3"
appBase="/usr/local/www"
autoDeploy="true">
<Context path=""
docBase="/usr/local/billing/www/admin"
debug="3"
reloadable="false" />
<Context path="/user"
docBase="/usr/local/billing/www/user"
debug="3"
reloadable="false" />
<Context path="/register"
docBase="/usr/local/billing/www/register"
debug="3"
reloadable="false" />
</Host>
</Engine>
</Service><Service name="Tomcat-Apache">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="443"
minProcessors="5"
maxProcessors="75"
enableLookups="false"
acceptCount="100"
debug="0"
scheme="https"
secure="true"
useURIValidationHack="false"
disableUploadTimeout="true">
<Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
clientAuth="false"
protocol="TLS"
keystoreFile="/etc/.key_bill"
keystorePass="PASSWD"/>
</Connector>
<Engine className="org.apache.catalina.connector.warp.WarpEngine"
name="Apache"
defaultHost="localhost"
debug="6">
<Host name="192.168.57.4"
debug="0"
appBase="/usr/local/www"
autoDeploy="true">
<Context path="" docBase="admin" debug="3" reloadable="false" />
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="server."
suffix=".log"
timestamp="true"/>
</Host>
</Engine>
</Service></Server>
>Хочу сделать чтобы при запросе http://192.168.57.4 принудительно происходил редирект на https://192.168.57.4
>
>При подключении на 443 или на 80 - всё работает ок.
>Подскажите плиз, куда копать!
>
>
># cat server.xml
><Server port="8005" shutdown="SHUTDOWN" debug="0">
><Service name="Tomcat-Apache">
> <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
> port="80"
> redirectPort="443"
> minProcessors="5"
> maxProcessors="75"
> enableLookups="false"
> acceptCount="100" debug="0"
> useURIValidationHack="false"
> disableUploadTimeout="true">
> </Connector>
> <Engine className="org.apache.catalina.connector.warp.WarpEngine"
> name="Apache"
> defaultHost="localhost"
> debug="0">
> <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="tizona."
> suffix=".log"
> timestamp="true"/>
> <Host name="192.168.57.4"
> debug="3"
> appBase="/usr/local/www"
> autoDeploy="true">
> <Context path=""
> docBase="/usr/local/billing/www/admin"
>
> debug="3"
>
> reloadable="false" />
> <Context path="/user"
> docBase="/usr/local/billing/www/user"
>
> debug="3"
>
> reloadable="false" />
> <Context path="/register"
> docBase="/usr/local/billing/www/register"
>
> debug="3"
>
> reloadable="false" />
> </Host>
> </Engine>
></Service>
>
><Service name="Tomcat-Apache">
> <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
> port="443"
> minProcessors="5"
> maxProcessors="75"
> enableLookups="false"
> acceptCount="100"
> debug="0"
> scheme="https"
> secure="true"
> useURIValidationHack="false"
> disableUploadTimeout="true">
> <Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
> clientAuth="false"
> protocol="TLS"
> keystoreFile="/etc/.key_bill"
> keystorePass="PASSWD"/>
> </Connector>
> <Engine className="org.apache.catalina.connector.warp.WarpEngine"
> name="Apache"
> defaultHost="localhost"
> debug="6">
> <Host name="192.168.57.4"
> debug="0"
> appBase="/usr/local/www"
> autoDeploy="true">
> <Context path="" docBase="admin" debug="3" reloadable="false" />
> <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="server."
> suffix=".log"
> timestamp="true"/>
> </Host>
> </Engine>
></Service>
>
></Server>В web-xml приложения необходимо прописать security constraint, подобный такому:
<security-constraint>
<web-resource-collection>
<web-resource-name>NAME</web-resource-name>
<url-pattern>/admin/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>После этого при обращении к страницам, которые соответствуют заданному паттерну томкат будет делать редирект на https. По http эти ресурсы обслуживаться больше не будут.
я это делаю так :
в конфиге апача пишем:<VirtualHost *:80>
ServerName admin.mjk.org.ua
RedirectMatch (.*)\.*$ https://admin.mjk.org.ua
</VirtualHost>или второй вариант, создать index.html файл и написать в нем :
<html>
<head>
<META HTTP-EQUIV="Refresh" Content="0; URL=https://stat.com.ua">
</head>
<body>
Redirect https://stat.com.ua
</body>
<html>
SUN ONE рулит
Что-то не выходит..
Вот мой web.xml:<security-constraint>
<web-resource-collection>
<web-resource-name>NAME</web-resource-name>
<url-pattern>/admin/*</url-pattern>
<!-- Пробовал и такие варианты
<url-pattern></url-pattern>
<url-pattern>*</url-pattern>
<url-pattern>/*</url-pattern>
<url-pattern>/</url-pattern>
<url-pattern>/admin/</url-pattern>
-- >
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>При коннекте на 80 или 443 в броузер выдается:
"
type Status report
message /
description The requested resource (/) is not available.
"
что-то ветка на флейм уже смахивает, если что можно в аську 63902229