Перенос веб-интерфейса alfresco с порта 8080 на 80
После установки Alfresco использует порт 8080 для отображения веб-интерфейса, что не очень удобно. Конечно, хотелось бы использовать стандартный порт 80 и ссылку вида http://localhost/alfresco вместо http://localhost:8080/alfresco. Как перенести веб-интерфейс alfresco, не прибегая к iptables?
Необходимо изменить "8080" на "80" в конфигурационный файлах Alfresco:
- $ALF_HOME/tomcat/conf/server.xml
- $ALF_HOME/tomcat/webapps/share/WEB-INF/urlrewrite.xml
- $ALF_HOME/tomcat/webapps/share/WEB-INF/classes/alfresco/pagerenderer-config.xml
- $ALF_HOME/tomcat/webapps/share/WEB-INF/classes/alfresco/webscript-framework-config-test.xml
- $ALF_HOME/tomcat/webapps/share/WEB-INF/classes/alfresco/webscript-framework-config.xml
- $ALF_HOME/tomcat/webapps/share/WEB-INF/classes/alfresco/webscripts/org/alfresco/indexall.get.mediawiki.ftl
- $ALF_HOME/tomcat/shared/classes/alfresco/extension/custom-repository.properties
После этого действия у вас заработает http://localhost/alfresco
Но есть проблема, о которой редко где упоминает в своих документациях сама Alfresco. После этих действий у вас не заработает /share. Для работы /share на порту 80 необходимо добавить еще один нестандартный конфиг: $ALF_SHARED/classes/alfresco/web-extension/share-config-custom.xml.
В файл необходимо прописать примерно следующее:
<alfresco-config> <config evaluator="string-compare" condition="Remote"> <remote> <endpoint> <id>alfresco-noauth</id> <name>Alfresco - unauthenticated access</name> <description>Access to Alfresco Repository WebScripts that do not require authentication</description> <connector-id>alfresco</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <identity>none</identity> </endpoint> <endpoint> <id>alfresco</id> <name>Alfresco - user access</name> <description>Access to Alfresco Repository WebScripts that require user authentication</description> <connector-id>alfresco</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <identity>user</identity> </endpoint> <endpoint> <id>alfresco-feed</id> <name>Alfresco Feed</name> <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description> <connector-id>http</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <basic-auth>true</basic-auth> <identity>user</identity> </endpoint> </remote> </config> </alfresco-config>
После этого можно спокойно рестартить alfresco.
Комментарии
01/12/2010 - 20:51
Насколько я понимаю, этот вариант годится только в том случае когда портал запущен от root'а?
01/12/2010 - 21:57
Хм, не пробовала запускать от alfresco, но подозреваю, что должно работать как и любой кастомный конфиг, если не забыть сменить права. А почему не должно работать?
03/12/2010 - 14:52
Порты <1000 непривилегированному пользователю брать нельзя.
03/12/2010 - 21:05
Главное правило при настройке alfresco -- это никогда не трогать конфигурационные файлы в tomcat/webapps/. Для настройки нужно использовать файлы *-config-custom.xml для переопределения/дополнения стандартных настроек. В данном случае, нужно изменить порт, который слушает tomcat в файле tomcat/conf/server.xml. Приведенный share-config-custom.xml использует порт 8080, его нужно сменить на 80.
04/12/2010 - 00:00
Ну насчет "никогда" - это ты загнул. Иначе не настроишь нормально smb, ftp.. Да и локализация, насколько я помню, туда же кладется.. И orbeon (например) для установки на тот же томкат, в tomcat/webapps кладется. Так что трогать можно, просто не от балды.
04/12/2010 - 14:07
Совсем даже не перегнул. Настройку ftp и smb/cifs можно сделать при помощи tomcat/shared/classes/alfresco/extension/file-servers-custom.xml. Русский языковой пакет кладётся в webapps/alfresco и webapps/share, но при этом он не изменяет стандартных конфигов, только дописывает файлы с русскими сообщениями. Orbeon (как и любой друго war) можно поставить рядом с alfresco, положив его в tomcat/webapps -- эта папка не имеет никакого отношения к alfresco.
04/12/2010 - 15:05
Ну тык отношения не имеет, а ты говоришь в ней ничего не трогать.. Конфиги созданы для того, чтобы настраивать ими, а не чтобы их не трогать..
04/12/2010 - 15:23
Не имеет отношения непосредственно tomcat/webapps -- в ней можно делать всё, что угодно, а вот конфиги в tomcat/webapps/alfresco лучше не трогать, тем более, что есть способ переопределить стандартные настройки. В случае кривого кофига в tomcat/shared его можно тупо снести, не боясь ничего сломать, с системными файлами такого сделать не получится. Поэтому, надо либо делать резервные копии с параноидальной частотой, либо не трогать системные файлы и всю настройку проводить в tomcat/shared.
01/06/2011 - 14:10
Самый простой способ - установить web сервер cherokee с reverse proxy
01/06/2011 - 16:44
Накидал мааааленькую инструкцию:
http://mtaalamu.ru/blog/1853.html
Всегда использую reverse proxy с проектами в которых работает Tomcat
01/06/2011 - 19:08
Средство не только удобное, но и массивное.. Вариантов много, можно и apache обычный настроить как прокси. Но если говорить о переносе на 80й порт без использования стороннего ПО, а используя только alfresco, то правку пары конфигов вполне можно и пережить, зато это экономит ресурсы и идейно верно..
Не хочу сказать, что предложенный вариант плох, просто для продакшна, где важна производительность и минимальное количество точек отказа - идея не подходит..
02/06/2011 - 15:58
Все работает в продакшене именно через reverse proxy и ничего ;)