<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 04/24/2015 03:04 PM, Nochum Sossonko
wrote:<br>
</div>
<blockquote cite="mid:00b801d07e8f$3bc0d260$b3427720$@gaalloys.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:344288013;
mso-list-type:hybrid;
mso-list-template-ids:-921014224 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1
{mso-list-id:1684355706;
mso-list-type:hybrid;
mso-list-template-ids:1629675668 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">Hi,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">We are using Kallithea as our SCM in our
company (very nice, btw) installed on a Windows Server 2008
R2. The installation process was pretty straightforward but I
did some things that I could not find in the online
documentation so I figured I’d post my “findings” here in case
it will help anyone else (and for inclusion in the docs, as
appropriate).</p>
</div>
</blockquote>
<br>
Thanks for sharing!<br>
<br>
Please consider providing this as a patch to our documentation. We
are all users of the system and if we all contribute we will get all
more than we give ;-) The documentation has a lot of room for
improvement - probably even more on windows where we only have few
users.<br>
<br>
I assume "run the Kallithea server on startup" means using the small
web server in 'paster serve' to run the WSGI application?<br>
Why did you decide to use IIS as reverse proxy instead of running
Kallithea inside IIS as described on
<a class="moz-txt-link-freetext" href="http://docs.kallithea-scm.org/en/latest/installation_iis.html">http://docs.kallithea-scm.org/en/latest/installation_iis.html</a> ?<br>
<br>
/Mads<br>
<br>
<br>
<blockquote cite="mid:00b801d07e8f$3bc0d260$b3427720$@gaalloys.com"
type="cite">
<div class="WordSection1">
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoListParagraph"
style="text-indent:-.25in;mso-list:l1 level1 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore">1.<span style="font:7.0pt
"Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>After following the normal install steps, I
wanted to use IIS as a reverse-proxy to the Kallithea server.
To get this done properly, I did the following:<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">a.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Install IIS Rewrite Module and Application
Request Routing.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.5in;text-indent:-1.5in;mso-text-indent-alt:-9.0pt;mso-list:l1
level3 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore"><span style="font:7.0pt "Times
New Roman"">
</span>i.<span style="font:7.0pt "Times New
Roman""> </span></span><!--[endif]--><span
dir="LTR"></span><a moz-do-not-send="true"
href="http://www.iis.net/downloads/microsoft/url-rewrite">http://www.iis.net/downloads/microsoft/url-rewrite</a><o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.5in;text-indent:-1.5in;mso-text-indent-alt:-9.0pt;mso-list:l1
level3 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore"><span style="font:7.0pt "Times
New Roman"">
</span>ii.<span style="font:7.0pt "Times New
Roman""> </span></span><!--[endif]--><span
dir="LTR"></span><a moz-do-not-send="true"
href="http://www.iis.net/downloads/microsoft/application-request-routing">http://www.iis.net/downloads/microsoft/application-request-routing</a><o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">b.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Enable proxying at the global, server level
(this can be done in the IIS GUI via “Application Request
Routing” icon -> Server Proxy Settings link on the
right-hand side).<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">c.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>In that same settings window (very
important!!) uncheck “Include TCP port from client IP” under
the “X-Forwarded-For” setting.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">d.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Under query string support, select “Include
query string”.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">e.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Leave all other settings there as-is.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">f.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Create a new site and make make a new IIS
Rewrite rule via the IIS Rewrite icon on the site.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">g.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Select “Reverse Proxy” and fill out the
proxy URL as “127.0.0.1:5000” and check “Enbable SSL
Offloading”.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">h.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>After the rule is created, open it and
check that the URL is correct (with the proper port) and check
“Append Query String”.<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2
lfo2"><!--[if !supportLists]--><span style="mso-list:Ignore">i.<span
style="font:7.0pt "Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Finally, run the following command to fix
the clone url: appcmd.exe set config
-section:system.webServer/proxy /preserveHostHeader:"True"
/commit:apphost<o:p></o:p></p>
<p class="MsoListParagraph"
style="margin-left:1.5in;text-indent:-1.5in;mso-text-indent-alt:-9.0pt;mso-list:l1
level3 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore"><span style="font:7.0pt "Times
New Roman"">
</span>i.<span style="font:7.0pt "Times New
Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>This is a server-wide setting, there is no
way to set this on the site level.<o:p></o:p></p>
<p class="MsoListParagraph"
style="text-indent:-.25in;mso-list:l1 level1 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore">2.<span style="font:7.0pt
"Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Then, I wanted an ultra-simple way to run
the Kallithea server on startup, so I created a task that runs
on startup and uses a batch file to run the paster command. I
won’t paste the event file here, as it is a very simple thing
to do, but I can provide if anyone is interested.<o:p></o:p></p>
<p class="MsoListParagraph"
style="text-indent:-.25in;mso-list:l1 level1 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore">3.<span style="font:7.0pt
"Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>I also made an event to run the paster
make-index command to update the Whoosh full-text search
indexes every 2 hours.<o:p></o:p></p>
<p class="MsoListParagraph"
style="text-indent:-.25in;mso-list:l1 level1 lfo2"><!--[if !supportLists]--><span
style="mso-list:Ignore">4.<span style="font:7.0pt
"Times New Roman""> </span></span><!--[endif]--><span
dir="LTR"></span>Finally, I ran into an issue where my
server was returning a 500 for certain code files (eg, .csproj
and .cs files) and had to modify the Request Filtering on the
Kallithea site (via the icon of the same name) -> File Name
Extensions to allow these files to be served.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Not much in the way of innovation, but
figured I’d share <span style="font-family:Wingdings">J</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thank you,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">Nochum
Sossonko,</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">IT Director</span><o:p></o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">Georgian
American Alloys, Inc</span><o:p></o:p></p>
</div>
<br>
</blockquote>
<br>
</body>
</html>