Прокси Реверса Apache через mod_proxy_ajp не запросы маршрутизации к Tomcat

проверьте http://simpleservermonitor.codeplex.com/. Я использую это. Если у Вас есть разработчик, можно также настроить его.

Prtg - также другой хорошие варианты.

0
задан 8 March 2013 в 22:42
1 ответ

Хорошо, две идеи. Первый, Почему в конфигурации Apache у вас есть 3 параметра ProxyPass для URL-адресов, которые, похоже, настроены на размещение в / portal / ?

ProxyPass /portal/api-v1 ajp://127.0.0.1:8009/portal/api-v1                         
ProxyPassReverse /portal/api-v1 ajp://127.0.0.1:8009/portal/api-v1                  

ProxyPass /portal/jsp ajp://127.0.0.1:8009/portal/jsp                               
ProxyPassReverse /portal/jsp ajp://127.0.0.1:8009/portal/jsp                        

ProxyPass /portal/j_spring_security_check ajp://127.0.0.1:8009/portal/j_spring_security_check
ProxyPassReverse /portal/j_spring_security_check ajp://127.0.0.1:8009/portal/j_spring_security_check

Я бы предложил упростить его - если возможно - до следующего:

ProxyPass /portal ajp://127.0.0.1:8009/portal/
ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

Я также добавляю этот бит mod_rewrite , чтобы убедиться, что добавлена ​​косая черта в конце:

# Settings for adding a trailing slash to the URL
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/(portal)$
RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L]

Кроме того, для mod_proxy я делаю следующее:

# Proxy specific settings
ProxyRequests Off
ProxyPreserveHost On

Все это в сумме дает Конфигурация виртуального хоста Apache выглядит так. Я также предлагаю откатить proxy.conf к значениям по умолчанию. Поместите все необходимые настройки в файл VirtualHost, как показано ниже, так что вам не нужно ничего делать, но убедитесь, что файл конфигурации перемещается между настройками, и вы не распространяете настройки конфигурации на все типы файлов повсюду:

<VirtualHost *:80>                                                                      
    DocumentRoot "/home/dbrogdon/development/app/application/portal/src/main/webapp/"
    ServerName ubuntu.dev                                                               
    ErrorLog ${APACHE_LOG_DIR}/ubuntu.dev.error.log                                     
    CustomLog ${APACHE_LOG_DIR}/ubuntu.dev.access.log combined                          
    LogLevel debug                                                                      

    ProxyPass /portal ajp://127.0.0.1:8009/portal/
    ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    # Settings for adding a trailing slash to the URL
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/(portal)$
    RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L]

    # Settings for Apache Reverse Proxying
    <IfModule mod_proxy.c>

      # Proxy specific settings
      ProxyRequests Off
      ProxyPreserveHost On

      <Proxy *>
        AddDefaultCharset off
        Order deny,allow
        Allow from all
      </Proxy>

      ProxyPass /portal ajp://127.0.0.1:8009/portal/
      ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    </IfModule>

    <Directory "/home/dbrogdon/development/app/application/portal/src/main/webapp/">
        Options -Indexes FollowSymLinks                                                 
        AllowOverride AuthConfig FileInfo                                               
        Order allow,deny                                                                
        Allow from all                                                                  
    </Directory>                                                                        

</VirtualHost>

Это Этот тип настройки всегда отлично подходит для меня, когда я соединяю мир веб-обслуживания Java и конфигураций Apache.

для mod_proxy Я делаю следующее:

# Proxy specific settings
ProxyRequests Off
ProxyPreserveHost On

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

<VirtualHost *:80>                                                                      
    DocumentRoot "/home/dbrogdon/development/app/application/portal/src/main/webapp/"
    ServerName ubuntu.dev                                                               
    ErrorLog ${APACHE_LOG_DIR}/ubuntu.dev.error.log                                     
    CustomLog ${APACHE_LOG_DIR}/ubuntu.dev.access.log combined                          
    LogLevel debug                                                                      

    ProxyPass /portal ajp://127.0.0.1:8009/portal/
    ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    # Settings for adding a trailing slash to the URL
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/(portal)$
    RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L]

    # Settings for Apache Reverse Proxying
    <IfModule mod_proxy.c>

      # Proxy specific settings
      ProxyRequests Off
      ProxyPreserveHost On

      <Proxy *>
        AddDefaultCharset off
        Order deny,allow
        Allow from all
      </Proxy>

      ProxyPass /portal ajp://127.0.0.1:8009/portal/
      ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    </IfModule>

    <Directory "/home/dbrogdon/development/app/application/portal/src/main/webapp/">
        Options -Indexes FollowSymLinks                                                 
        AllowOverride AuthConfig FileInfo                                               
        Order allow,deny                                                                
        Allow from all                                                                  
    </Directory>                                                                        

</VirtualHost>

Это Этот тип настройки всегда отлично подходит для меня, когда я соединяю мир веб-обслуживания Java и конфигураций Apache.

для mod_proxy Я делаю следующее:

# Proxy specific settings
ProxyRequests Off
ProxyPreserveHost On

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

<VirtualHost *:80>                                                                      
    DocumentRoot "/home/dbrogdon/development/app/application/portal/src/main/webapp/"
    ServerName ubuntu.dev                                                               
    ErrorLog ${APACHE_LOG_DIR}/ubuntu.dev.error.log                                     
    CustomLog ${APACHE_LOG_DIR}/ubuntu.dev.access.log combined                          
    LogLevel debug                                                                      

    ProxyPass /portal ajp://127.0.0.1:8009/portal/
    ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    # Settings for adding a trailing slash to the URL
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/(portal)$
    RewriteRule ^(.*)$ http://%{HTTP_HOST}$1/ [R=301,L]

    # Settings for Apache Reverse Proxying
    <IfModule mod_proxy.c>

      # Proxy specific settings
      ProxyRequests Off
      ProxyPreserveHost On

      <Proxy *>
        AddDefaultCharset off
        Order deny,allow
        Allow from all
      </Proxy>

      ProxyPass /portal ajp://127.0.0.1:8009/portal/
      ProxyPassReverse /portal ajp://127.0.0.1:8009/portal/

    </IfModule>

    <Directory "/home/dbrogdon/development/app/application/portal/src/main/webapp/">
        Options -Indexes FollowSymLinks                                                 
        AllowOverride AuthConfig FileInfo                                               
        Order allow,deny                                                                
        Allow from all                                                                  
    </Directory>                                                                        

</VirtualHost>

Это Этот тип настройки всегда отлично подходит для меня, когда я соединяю мир веб-обслуживания Java и конфигураций Apache.

1
ответ дан 4 December 2019 в 21:24

Теги

Похожие вопросы