Alfresco Community 5.0.a No accesible desde internet

cancel
Showing results for 
Search instead for 
Did you mean: 
jose00
Member II

Alfresco Community 5.0.a No accesible desde internet

Hola, tras la instalación y configuración de Alfresco todo funciona correctamente en local. El problema radica en que no responde desde internet.

He abierto el puerto del router y redireccionado a la maquina y no funciona.
He comprobado que apache web respondiera y funciona ok apache web, pero catalina tomcat no quiere.

tras la desesperación he realizado un ProxyReverse y me muestra la pagina de login pero al intentar acceder da errores porque creo que coge el puerto origen de la url en vez del de destino 8080

¿Alguno habeís conseguido ponerlo en internet?

4 Replies
jefry999
Member II

Re: Alfresco Community 5.0.a No accesible desde internet

prueba instalando con la ip del computador , no le asignes 127.0.0.1,  pon la ip: al instalarlo. y en -global.properties asegurate que este la ip , y el puerto 8080 , bajo que sistema operativo lo estas instalando. recuerda que necesita ip publica
jose00
Member II

Re: Alfresco Community 5.0.a No accesible desde internet

El sistema opertarivo es un linux ubuntu server. Lo instale no con ip sino con el nombre de dominio y éste puesto en /etc/hosts , asi como redireccionado desde el hosting a mi máquina. Creo que el problema radica en la configuracion del tomcat puesto que no me entrga ni la página por defecto de ROOT del tomcat. Todas las redirecciones funcionan, es decir la comunicación llega a ese servidor (probado con apache web server) pero tomcat no le aptece atender las peticiones externas. Las internas si que las atiende
cristinamr
Advanced

Re: Alfresco Community 5.0.a No accesible desde internet

Buenas jefry999.

Comprueba desde que tienes abiertos los puertos TCP y UPD, en este caso el 8080 y comentanos.

Un saludo.
--
VenziaIT: helping companies since 2005! Our ECM products: AQuA & Seidoc
bostaxola
Member II

Re: Alfresco Community 5.0.a No accesible desde internet

Yo tenía el mismo problema, no podía acceder al puerto 28080, y el 80 lo tengo ocupado. Lo he solucionado con lo siguiente:

He añadido al alfresco-global.properties lo siguiente, da igual si el 80 lo tienes ocupado.


alfresco.port=80
share.port=80



Añadido lo siguiente a /opt/alfresco-5.0.a/tomcat/shared/classes/alfresco/web-extension/share-config-custom.xml

   <!– Configuration for Apache reverse proxy on localhost:8089 –>
   <config evaluator="string-compare" condition="CSRFPolicy" replace="true">

      <!–
         Will be used and exposed to the client side code in Alfresco.contants.CSRF_POLICY.
         Use the Alfresco.util.CSRFPolicy.getHeader() or Alfresco.util.CSRFPolicy.getParameter() with Alfresco.util.CSRFPolicy.getToken()
         to set the token in custom 3rd party code.
       –>
      <client>
         <cookie>Alfresco-CSRFToken</cookie>
         <header>Alfresco-CSRFToken</header>
         <parameter>Alfresco-CSRFToken</parameter>
      </client>

      <!– The first rule with a matching request will get its action invoked, the remaining rules will be ignored. –>
      <filter>
         <!–
            Certain Surf POST requests form the WebScript console must be allowed to pass without a token since
            the Surf WebScript console code can't be dependent on a Share specific filter.
         –>
         <rule>
            <request>
               <method>POST</method>
               <path>^\/page\/caches\/dependency\/clear|^\/page\/index|^\/page\/surfBugStatus|^\/page\/modules\/deploy|^\/page\/modules\/module|^\/page\/api\/javascript\/debugger</path>
            </request>
            <action name="assertReferer">
               <param name="always">false</param>
               <param name="referer">http://IP_SERVIDOR/.*</param>
            </action>
            <action name="assertOrigin">
               <param name="always">false</param>
               <param name="origin">http://IP_SERVIDOR</param>
            </action>
         </rule>

         <!– Certain Share POST requests does NOT require a token –>
         <rule>
            <request>
               <method>POST</method>
               <path>^/page/dologin.*|^\/page/site\/[^\/]+\/start-workflow|^\/page/start-workflow</path>
            </request>
            <action name="assertReferer">
               <param name="always">false</param>
               <param name="referer">http://IP_SERVIDOR/.*</param>
            </action>
            <action name="assertOrigin">
               <param name="always">false</param>
               <param name="origin">http://IP_SERVIDOR</param>
            </action>
         </rule>

         <!– Clear the token when logging out –>
         <rule>
            <request>
               <method>GET</method>
               <path>^/page/dologout.*</path>
            </request>
            <action name="clearToken">
               <param name="session">Alfresco-CSRFToken</param>
               <param name="cookie">Alfresco-CSRFToken</param>
            </action>
         </rule>

         <!– Make sure the first token is generated –>
         <rule>
            <request>
               <session>
                  <attribute name="_alf_USER_ID">.*</attribute>
                  <attribute name="Alfresco-CSRFToken"/>
                  <!– empty attribute element indicates null –>
               </session>
            </request>
            <action name="generateToken">
               <param name="session">Alfresco-CSRFToken</param>
               <param name="cookie">Alfresco-CSRFToken</param>
            </action>
         </rule>

         <!– Refresh token on new "page" visit when a user is logged in –>
         <rule>
            <request>
               <method>GET</method>
               <path>^/page/.*</path>
               <session>
                  <attribute name="_alf_USER_ID">.*</attribute>
                  <attribute name="Alfresco-CSRFToken">.*</attribute>
               </session>
            </request>
            <action name="generateToken">
               <param name="session">Alfresco-CSRFToken</param>
               <param name="cookie">Alfresco-CSRFToken</param>
            </action>
         </rule>

         <!– Verify multipart requests contains the token as a parameter and also correct referer & origin header if available –>
         <rule>
            <request>
               <method>POST</method>
               <header name="Content-Type">^multipart/.*</header>
               <session>
                  <attribute name="_alf_USER_ID">.*</attribute>
               </session>
            </request>
            <action name="assertToken">
               <param name="session">Alfresco-CSRFToken</param>
               <param name="parameter">Alfresco-CSRFToken</param>
            </action>
            <action name="assertReferer">
               <param name="always">false</param>
               <param name="referer">http://IP_SERVIDOR/.*</param>
            </action>
            <action name="assertOrigin">
               <param name="always">false</param>
               <param name="origin">http://IP_SERVIDOR</param>
            </action>
         </rule>

         <!–
            Verify there is a token in the header for remaining state changing requests and also correct
            referer & origin headers if available. We "catch" all content types since just setting it to
            "application/json.*" since a webscript that doesn't require a json request body otherwise would be
            successfully executed using i.e. "text/plain".
         –>
         <rule>
            <request>
               <method>POST|PUT|DELETE</method>
               <session>
                  <attribute name="_alf_USER_ID">.*</attribute>
               </session>
            </request>
            <action name="assertToken">
               <param name="session">Alfresco-CSRFToken</param>
               <param name="header">Alfresco-CSRFToken</param>
            </action>
            <action name="assertReferer">
               <param name="always">false</param>
               <param name="referer">http://IP_SERVIDOR/.*</param>
            </action>
            <action name="assertOrigin">
               <param name="always">false</param>
               <param name="origin">http://IP_SERVIDOR</param>
            </action>

         </rule>
      </filter>
   </config>


Y por último he añadido a /etc/apache2/httpd.conf



<VirtualHost *:80>
    ServerAdmin root@U0177633.ehu.es
    ServerName  Alfresco
    ServerAlias AAA.BBB.com
    ProxyRequests Off
    <Proxy *>
            Order deny,allow
            Allow from all
    </Proxy>   
   ProxyPass /share http://localhost:28080/share
   ProxyPassReverse /share http://localhost:28080/share
   ProxyPass /alfresco http://localhost:28080/alfresco
   ProxyPassReverse /alfresco http://localhost:28080/alfresco

    ProxyPassReverseCookiePath / /

</VirtualHost>


Reinicia apache2 y alfresco y debería funcionar sin problemas.