How to Edit online over SSL on Alfresco Community 5.0.b
I was finally able to setup Edit online over SSL on Alfresco Community 5.0.B. Here's my setup:
Ubuntu 14.4
Apache as frontend
Tomcat serving Alfresco pages through apache.
I am assuming you are familiar with Linux, Alfresco and Apache and thus would not go in-depth.
Enable Modules:
a2enmod rewrite proxy_ajp rewrite ssl
Create a virtual host for SSL access and add the following, replace <FQDN> with the domain name:
ServerName <FQDN>
ProxyRequests off
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/alfresco*
RewriteCond %{REQUEST_URI} !^/share*
RewriteRule /(.*)$ /share$0 [R]
ProxyPass /alfresco ajp://127.0.0.1:8009/alfresco
ProxyPassReverse /alfresco ajp://127.0.0.1:8009/alfresco
ProxyPass /share ajp://127.0.0.1:8009/share
ProxyPassReverse /share ajp://127.0.0.1:8009/share
ProxyPass / http://127.0.0.1:7070/
ProxyPassReverse / http://127.0.0.1:7070/
ProxyPass /_vti_bin/ http://127.0.0.1:7070/_vti_bin/
ProxyPassReverse /_vti_bin/ http://127.0.0.1:7070/_vti_bin/
ProxyPass /_vti_inf.html http://127.0.0.1:7070/_vti_inf.html
ProxyPassReverse /_vti_inf.html http://127.0.0.1:7070/_vti_inf.html
ProxyPass /_vti_history/ http://127.0.0.1:7070/_vti_history/
ProxyPassReverse /_vti_history/ http://127.0.0.1:7070/_vti_history/
Enable the virtual host, don't forget the SSL certificates
Create tomcat/shared/classes/alfresco/extension/vti-custom-context.xml and add the following content:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://
www.springframework.org/dtd/spring-beans.dtd'>
<beans>
<!--
<bean id="vtiServerConnector"
class="org.mortbay.jetty.bio.SocketConnector">
<property name="port">
<value>${vti.server.port}</value>
</property>
<property name="headerBufferSize">
<value>32768</value>
</property>
</bean>
-->
<!-- Use this Connector instead for SSL communications -->
<!-- You will need to set the location of the KeyStore holding your -->
<!-- server certificate, along with the KeyStore password -->
<!-- You should also update the vti.server.protocol property to https
-->
<bean id="vtiServerConnector" class="org.mortbay.jetty.security.SslSocketConnector">
<property name="port">
<value>${vti.server.port}</value>
</property>
<property name="headerBufferSize">
<value>32768</value>
</property>
<property name="maxIdleTime">
<value>30000</value>
</property>
<property name="keystore">
<value>${vti.server.ssl.keystore}</value>
</property>
<property name="keyPassword">
<value>${vti.server.ssl.password}</value>
</property>
<property name="keystoreType">
<value>JCEKS</value>
</property>
</bean>
</beans>
Edit tomcat/shared/classes/alfresco-global.properties and add:
vti.server.port=7070
vti.server.protocol=https
vti.server.ssl.keystore=/opt/alfresco-5.0.b/alf_data/keystore/ssl.keystore
vti.server.ssl.password=kT9X6oe68t
vti.server.url.path.prefix=/alfresco
vti.server.external.host=documents.ezref.info
vti.server.external.port=7070
vti.server.external.protocol=https
vti.server.external.contextPath=/alfresco
Stop and start Apache and alfresco.
Edit online will now work on SSL with the default certificate.