diff options
author | Loïc Hoguin <[email protected]> | 2016-08-29 12:39:49 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2016-08-29 12:40:03 +0200 |
commit | c807880f7ac73f813b2660ea81a00f7712a4e793 (patch) | |
tree | ba1d09e9b177f230665a80513b33fbd532000ce4 /_build/static/archives/extend/2015-January | |
parent | b1df25a7d9cda697513650659b781b55b40898f8 (diff) | |
download | ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.tar.gz ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.tar.bz2 ninenines.eu-c807880f7ac73f813b2660ea81a00f7712a4e793.zip |
Add old mailing list archives
Diffstat (limited to '_build/static/archives/extend/2015-January')
31 files changed, 3272 insertions, 0 deletions
diff --git a/_build/static/archives/extend/2015-January/000484.html b/_build/static/archives/extend/2015-January/000484.html new file mode 100644 index 00000000..74425562 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000484.html @@ -0,0 +1,110 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B12F6E.6000305%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + + <LINK REL="Next" HREF="000485.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B12F6E.6000305%40bestmx.net%3E" + TITLE="[99s-extend] websocket over ssl">e at bestmx.net + </A><BR> + <I>Sat Jan 10 14:55:58 CET 2015</I> + <P><UL> + + <LI>Next message: <A HREF="000485.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#484">[ date ]</a> + <a href="thread.html#484">[ thread ]</a> + <a href="subject.html#484">[ subject ]</a> + <a href="author.html#484">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hello all. + +I am trying to alter my cowboy-based websocket server from plain to SSL +connection. +And I found out that I have failed to understand very basics of the +combination of WS and SSL. + +As far as i've understood the very nature of the WS it is a bit altered +http connection (i open the http connection first, and then i change its +status to WS) + +On the other hand the whole "HTTP story" could be wrapped into SSL, so +that SSL is an outer layer of data encoding (as seen transparent by an +application) + +thus, +if I open HTTPS connection (which implies SSL enveloping) and then alter +the connection status to WS, the whole "WS story" appears naturally +INSIDE THE PREVIOUSLY ESTABLISHED SSL CONNECTION. + +Is it true? + +In this regard i can hardly find a place in this world for the "WSS" +term, what does it stand for? + +Please, help me fit it in my head. + +However, i might be confusing some Client-Side entities, that are +involved in the process of starting up my WebSocket. + +I am using a Browser with JavaScript. + +The semantics of the very WebSocket.start() operation is not enough +clear to me. Please, do not laugh. + +when i do JS WebSocket.start() does it: +(a) opens an http connection and then alters it to WS +(b) alters the connection in the context of which the JS process is running +???? + +I'll be damned if the answer was lying on the surface of the internet! + +The third part of this ugly question is about cowboy actually. +How all these entities mentioned above do map into my_app.erl file? +what particular bits of cowboy's "configuration" (may i call this +particular piece of code a "setup" or "config"?) affect what aspects of +the connection initialization. + +well, i am afraid it could be put in a simpler way: +"Exactly When and Where the WSS story begins?" + +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + + <LI>Next message: <A HREF="000485.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#484">[ date ]</a> + <a href="thread.html#484">[ thread ]</a> + <a href="subject.html#484">[ subject ]</a> + <a href="author.html#484">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000485.html b/_build/static/archives/extend/2015-January/000485.html new file mode 100644 index 00000000..03cccb2d --- /dev/null +++ b/_build/static/archives/extend/2015-January/000485.html @@ -0,0 +1,136 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13550.5050504%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000484.html"> + <LINK REL="Next" HREF="000486.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13550.5050504%40ninenines.eu%3E" + TITLE="[99s-extend] websocket over ssl">essen at ninenines.eu + </A><BR> + <I>Sat Jan 10 15:21:04 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000484.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000486.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#485">[ date ]</a> + <a href="thread.html#485">[ thread ]</a> + <a href="subject.html#485">[ subject ]</a> + <a href="author.html#485">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Assuming you have no problem understanding HTTPS, the only differences +between plain Websocket and HTTPS Websocket are as follow: + +In your browser, your <A HREF="ws://">ws://</A> links become <A HREF="wss://">wss://</A> links. + +In Cowboy, use start_https instead of start_http. There is no change +required in your code otherwise. + +It may or may not be possible to use <A HREF="wss://">wss://</A> from an HTTP page or <A HREF="ws://">ws://</A> +from an HTTPS page, I'm not too up to date on that one. Otherwise, <A HREF="ws://">ws://</A> +from HTTP page or <A HREF="wss://">wss://</A> from HTTPS page works as intended. + +There is no requirement that a Websocket connection is initiated on a +new TCP connection. I am not sure if browsers reuse connections or not. + +On 01/10/2015 02:55 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +><i> Hello all. +</I>><i> +</I>><i> I am trying to alter my cowboy-based websocket server from plain to SSL +</I>><i> connection. +</I>><i> And I found out that I have failed to understand very basics of the +</I>><i> combination of WS and SSL. +</I>><i> +</I>><i> As far as i've understood the very nature of the WS it is a bit altered +</I>><i> http connection (i open the http connection first, and then i change its +</I>><i> status to WS) +</I>><i> +</I>><i> On the other hand the whole "HTTP story" could be wrapped into SSL, so +</I>><i> that SSL is an outer layer of data encoding (as seen transparent by an +</I>><i> application) +</I>><i> +</I>><i> thus, +</I>><i> if I open HTTPS connection (which implies SSL enveloping) and then alter +</I>><i> the connection status to WS, the whole "WS story" appears naturally +</I>><i> INSIDE THE PREVIOUSLY ESTABLISHED SSL CONNECTION. +</I>><i> +</I>><i> Is it true? +</I>><i> +</I>><i> In this regard i can hardly find a place in this world for the "WSS" +</I>><i> term, what does it stand for? +</I>><i> +</I>><i> Please, help me fit it in my head. +</I>><i> +</I>><i> However, i might be confusing some Client-Side entities, that are +</I>><i> involved in the process of starting up my WebSocket. +</I>><i> +</I>><i> I am using a Browser with JavaScript. +</I>><i> +</I>><i> The semantics of the very WebSocket.start() operation is not enough +</I>><i> clear to me. Please, do not laugh. +</I>><i> +</I>><i> when i do JS WebSocket.start() does it: +</I>><i> (a) opens an http connection and then alters it to WS +</I>><i> (b) alters the connection in the context of which the JS process is running +</I>><i> ???? +</I>><i> +</I>><i> I'll be damned if the answer was lying on the surface of the internet! +</I>><i> +</I>><i> The third part of this ugly question is about cowboy actually. +</I>><i> How all these entities mentioned above do map into my_app.erl file? +</I>><i> what particular bits of cowboy's "configuration" (may i call this +</I>><i> particular piece of code a "setup" or "config"?) affect what aspects of +</I>><i> the connection initialization. +</I>><i> +</I>><i> well, i am afraid it could be put in a simpler way: +</I>><i> "Exactly When and Where the WSS story begins?" +</I>><i> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000484.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000486.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#485">[ date ]</a> + <a href="thread.html#485">[ thread ]</a> + <a href="subject.html#485">[ subject ]</a> + <a href="author.html#485">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000486.html b/_build/static/archives/extend/2015-January/000486.html new file mode 100644 index 00000000..b3802139 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000486.html @@ -0,0 +1,81 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13724.8010503%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000485.html"> + <LINK REL="Next" HREF="000487.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13724.8010503%40bestmx.net%3E" + TITLE="[99s-extend] websocket over ssl">e at bestmx.net + </A><BR> + <I>Sat Jan 10 15:28:52 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000485.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000487.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#486">[ date ]</a> + <a href="thread.html#486">[ thread ]</a> + <a href="subject.html#486">[ subject ]</a> + <a href="author.html#486">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>><i> In Cowboy, use start_https instead of start_http. +</I> +thanx! it makes a lot of sense for me. +tell me please what deps should be declared in the .app file? + +is the following correct? + + {applications, [ + kernel, + stdlib, + crypto, + public_key, + ssl, + cowboy + ]}, + +does the order matters? + +(i borrowed that from the internet without deep understanding of the +roles of each app on the list) +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000485.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000487.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#486">[ date ]</a> + <a href="thread.html#486">[ thread ]</a> + <a href="subject.html#486">[ subject ]</a> + <a href="author.html#486">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000487.html b/_build/static/archives/extend/2015-January/000487.html new file mode 100644 index 00000000..7a69ae5c --- /dev/null +++ b/_build/static/archives/extend/2015-January/000487.html @@ -0,0 +1,90 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13881.6000408%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000486.html"> + <LINK REL="Next" HREF="000490.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13881.6000408%40ninenines.eu%3E" + TITLE="[99s-extend] websocket over ssl">essen at ninenines.eu + </A><BR> + <I>Sat Jan 10 15:34:41 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000486.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000490.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#487">[ date ]</a> + <a href="thread.html#487">[ thread ]</a> + <a href="subject.html#487">[ subject ]</a> + <a href="author.html#487">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Just kernel, stdlib, ssl, cowboy should be enough. Order does not matter +I think. + +On 01/10/2015 03:28 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +>><i> In Cowboy, use start_https instead of start_http. +</I>><i> +</I>><i> thanx! it makes a lot of sense for me. +</I>><i> tell me please what deps should be declared in the .app file? +</I>><i> +</I>><i> is the following correct? +</I>><i> +</I>><i> {applications, [ +</I>><i> kernel, +</I>><i> stdlib, +</I>><i> crypto, +</I>><i> public_key, +</I>><i> ssl, +</I>><i> cowboy +</I>><i> ]}, +</I>><i> +</I>><i> does the order matters? +</I>><i> +</I>><i> (i borrowed that from the internet without deep understanding of the +</I>><i> roles of each app on the list) +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000486.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000490.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#487">[ date ]</a> + <a href="thread.html#487">[ thread ]</a> + <a href="subject.html#487">[ subject ]</a> + <a href="author.html#487">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000488.html b/_build/static/archives/extend/2015-January/000488.html new file mode 100644 index 00000000..ada46131 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000488.html @@ -0,0 +1,112 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3CB264D9ED-5411-41D7-A481-1590E286DD74%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000490.html"> + <LINK REL="Next" HREF="000489.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>Lee Sylvester</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3CB264D9ED-5411-41D7-A481-1590E286DD74%40gmail.com%3E" + TITLE="[99s-extend] websocket over ssl">lee.sylvester at gmail.com + </A><BR> + <I>Sat Jan 10 15:39:41 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000490.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000489.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#488">[ date ]</a> + <a href="thread.html#488">[ thread ]</a> + <a href="subject.html#488">[ subject ]</a> + <a href="author.html#488">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>I use Cowboy for websockets, but I find it’s a lot easier (and less stressful) to run Nginx in front of it to provide the SSL layer. + +Lee + + +><i> On 10 Jan 2015, at 13:55, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +</I>><i> +</I>><i> Hello all. +</I>><i> +</I>><i> I am trying to alter my cowboy-based websocket server from plain to SSL connection. +</I>><i> And I found out that I have failed to understand very basics of the combination of WS and SSL. +</I>><i> +</I>><i> As far as i've understood the very nature of the WS it is a bit altered http connection (i open the http connection first, and then i change its status to WS) +</I>><i> +</I>><i> On the other hand the whole "HTTP story" could be wrapped into SSL, so that SSL is an outer layer of data encoding (as seen transparent by an application) +</I>><i> +</I>><i> thus, +</I>><i> if I open HTTPS connection (which implies SSL enveloping) and then alter the connection status to WS, the whole "WS story" appears naturally INSIDE THE PREVIOUSLY ESTABLISHED SSL CONNECTION. +</I>><i> +</I>><i> Is it true? +</I>><i> +</I>><i> In this regard i can hardly find a place in this world for the "WSS" term, what does it stand for? +</I>><i> +</I>><i> Please, help me fit it in my head. +</I>><i> +</I>><i> However, i might be confusing some Client-Side entities, that are involved in the process of starting up my WebSocket. +</I>><i> +</I>><i> I am using a Browser with JavaScript. +</I>><i> +</I>><i> The semantics of the very WebSocket.start() operation is not enough clear to me. Please, do not laugh. +</I>><i> +</I>><i> when i do JS WebSocket.start() does it: +</I>><i> (a) opens an http connection and then alters it to WS +</I>><i> (b) alters the connection in the context of which the JS process is running +</I>><i> ???? +</I>><i> +</I>><i> I'll be damned if the answer was lying on the surface of the internet! +</I>><i> +</I>><i> The third part of this ugly question is about cowboy actually. +</I>><i> How all these entities mentioned above do map into my_app.erl file? +</I>><i> what particular bits of cowboy's "configuration" (may i call this particular piece of code a "setup" or "config"?) affect what aspects of the connection initialization. +</I>><i> +</I>><i> well, i am afraid it could be put in a simpler way: +</I>><i> "Exactly When and Where the WSS story begins?" +</I>><i> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I> +</PRE> + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000490.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000489.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#488">[ date ]</a> + <a href="thread.html#488">[ thread ]</a> + <a href="subject.html#488">[ subject ]</a> + <a href="author.html#488">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000489.html b/_build/static/archives/extend/2015-January/000489.html new file mode 100644 index 00000000..6539271d --- /dev/null +++ b/_build/static/archives/extend/2015-January/000489.html @@ -0,0 +1,73 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13B3F.5090907%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000488.html"> + <LINK REL="Next" HREF="000491.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B13B3F.5090907%40bestmx.net%3E" + TITLE="[99s-extend] websocket over ssl">e at bestmx.net + </A><BR> + <I>Sat Jan 10 15:46:23 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000488.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#489">[ date ]</a> + <a href="thread.html#489">[ thread ]</a> + <a href="subject.html#489">[ subject ]</a> + <a href="author.html#489">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE> > I use Cowboy for websockets, but I find it’s a lot easier (and less + > stressful) to run Nginx in front of it to provide the SSL layer. + +well, nginx is my choice for almost everything, still i am trying to +minimize amount of intermediate software wherever possible. + +P.S. +with nginx and postgreSQL i have managed to eliminate any trace of +server-side scripting in my previous project :) +just nginx connected to Postgres. + +</PRE> + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000488.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#489">[ date ]</a> + <a href="thread.html#489">[ thread ]</a> + <a href="subject.html#489">[ subject ]</a> + <a href="author.html#489">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000490.html b/_build/static/archives/extend/2015-January/000490.html new file mode 100644 index 00000000..b8782f15 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000490.html @@ -0,0 +1,90 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] websocket over ssl + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B14513.3090804%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000487.html"> + <LINK REL="Next" HREF="000488.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] websocket over ssl</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20websocket%20over%20ssl&In-Reply-To=%3C54B14513.3090804%40bestmx.net%3E" + TITLE="[99s-extend] websocket over ssl">e at bestmx.net + </A><BR> + <I>Sat Jan 10 16:28:19 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000487.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000488.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#490">[ date ]</a> + <a href="thread.html#490">[ thread ]</a> + <a href="subject.html#490">[ subject ]</a> + <a href="author.html#490">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>thanx again. +now everything "magically" works :) + + +On 01/10/2015 03:34 PM, Loïc Hoguin wrote: +><i> Just kernel, stdlib, ssl, cowboy should be enough. Order does not matter +</I>><i> I think. +</I>><i> +</I>><i> On 01/10/2015 03:28 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +</I>>>><i> In Cowboy, use start_https instead of start_http. +</I>>><i> +</I>>><i> thanx! it makes a lot of sense for me. +</I>>><i> tell me please what deps should be declared in the .app file? +</I>>><i> +</I>>><i> is the following correct? +</I>>><i> +</I>>><i> {applications, [ +</I>>><i> kernel, +</I>>><i> stdlib, +</I>>><i> crypto, +</I>>><i> public_key, +</I>>><i> ssl, +</I>>><i> cowboy +</I>>><i> ]}, +</I>>><i> +</I>>><i> does the order matters? +</I>>><i> +</I>>><i> (i borrowed that from the internet without deep understanding of the +</I>>><i> roles of each app on the list) +</I>><i> +</I></PRE> + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000487.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000488.html">[99s-extend] websocket over ssl +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#490">[ date ]</a> + <a href="thread.html#490">[ thread ]</a> + <a href="subject.html#490">[ subject ]</a> + <a href="author.html#490">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000491.html b/_build/static/archives/extend/2015-January/000491.html new file mode 100644 index 00000000..b4f397a0 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000491.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] cowboy and handling exceptions + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3CCAE7Uswd9-1g2QytyFPBWTFzy1KKhBircPT6_Q%3Dg_qBNqwnouow%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000489.html"> + <LINK REL="Next" HREF="000492.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] cowboy and handling exceptions</H1> + <B>Stefan Strigler</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3CCAE7Uswd9-1g2QytyFPBWTFzy1KKhBircPT6_Q%3Dg_qBNqwnouow%40mail.gmail.com%3E" + TITLE="[99s-extend] cowboy and handling exceptions">stefan.strigler at gmail.com + </A><BR> + <I>Wed Jan 14 17:45:41 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000489.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#491">[ date ]</a> + <a href="thread.html#491">[ thread ]</a> + <a href="subject.html#491">[ subject ]</a> + <a href="author.html#491">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hey there, + +maybe I'm missing the obvious. What I want to do is add some generic +handler for exception handling. Say we have a set of resources some of +which delegating stuff to external, other services. These calls might +result in a + +throw({error, timeout}) + +for instance. How would I add/modify cowboy's middleware (right place?) to +handle those (known) exception and return a custom error (like 504 - +Gateway Timeout). + +Thanks for any hints, + +Steve +-------------- next part -------------- +An HTML attachment was scrubbed... +URL: <<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20150114/3267f73e/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20150114/3267f73e/attachment.html</A>> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000489.html">[99s-extend] websocket over ssl +</A></li> + <LI>Next message: <A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#491">[ date ]</a> + <a href="thread.html#491">[ thread ]</a> + <a href="subject.html#491">[ subject ]</a> + <a href="author.html#491">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000492.html b/_build/static/archives/extend/2015-January/000492.html new file mode 100644 index 00000000..2c11f0b5 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000492.html @@ -0,0 +1,91 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] cowboy and handling exceptions + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3C54B6AC33.8040207%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000491.html"> + <LINK REL="Next" HREF="000493.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] cowboy and handling exceptions</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3C54B6AC33.8040207%40ninenines.eu%3E" + TITLE="[99s-extend] cowboy and handling exceptions">essen at ninenines.eu + </A><BR> + <I>Wed Jan 14 18:49:39 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#492">[ date ]</a> + <a href="thread.html#492">[ thread ]</a> + <a href="subject.html#492">[ subject ]</a> + <a href="author.html#492">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>I don't know, there is no such thing in Cowboy. :-) + +On 01/14/2015 05:45 PM, Stefan Strigler wrote: +><i> Hey there, +</I>><i> +</I>><i> maybe I'm missing the obvious. What I want to do is add some generic +</I>><i> handler for exception handling. Say we have a set of resources some of +</I>><i> which delegating stuff to external, other services. These calls might +</I>><i> result in a +</I>><i> +</I>><i> throw({error, timeout}) +</I>><i> +</I>><i> for instance. How would I add/modify cowboy's middleware (right place?) +</I>><i> to handle those (known) exception and return a custom error (like 504 - +</I>><i> Gateway Timeout). +</I>><i> +</I>><i> Thanks for any hints, +</I>><i> +</I>><i> Steve +</I>><i> +</I>><i> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#492">[ date ]</a> + <a href="thread.html#492">[ thread ]</a> + <a href="subject.html#492">[ subject ]</a> + <a href="author.html#492">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000493.html b/_build/static/archives/extend/2015-January/000493.html new file mode 100644 index 00000000..cb5bf10f --- /dev/null +++ b/_build/static/archives/extend/2015-January/000493.html @@ -0,0 +1,98 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] cowboy and handling exceptions + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3C54B6AC5D.1080903%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000492.html"> + <LINK REL="Next" HREF="000494.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] cowboy and handling exceptions</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20cowboy%20and%20handling%20exceptions&In-Reply-To=%3C54B6AC5D.1080903%40ninenines.eu%3E" + TITLE="[99s-extend] cowboy and handling exceptions">essen at ninenines.eu + </A><BR> + <I>Wed Jan 14 18:50:21 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000494.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#493">[ date ]</a> + <a href="thread.html#493">[ thread ]</a> + <a href="subject.html#493">[ subject ]</a> + <a href="author.html#493">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>I send too early... + +I want to add a hook for when Cowboy receives exceptions in Cowboy 2, so +at that point you will be able to do it. But nothing in current Cowboy. + +On 01/14/2015 06:49 PM, Loïc Hoguin wrote: +><i> I don't know, there is no such thing in Cowboy. :-) +</I>><i> +</I>><i> On 01/14/2015 05:45 PM, Stefan Strigler wrote: +</I>>><i> Hey there, +</I>>><i> +</I>>><i> maybe I'm missing the obvious. What I want to do is add some generic +</I>>><i> handler for exception handling. Say we have a set of resources some of +</I>>><i> which delegating stuff to external, other services. These calls might +</I>>><i> result in a +</I>>><i> +</I>>><i> throw({error, timeout}) +</I>>><i> +</I>>><i> for instance. How would I add/modify cowboy's middleware (right place?) +</I>>><i> to handle those (known) exception and return a custom error (like 504 - +</I>>><i> Gateway Timeout). +</I>>><i> +</I>>><i> Thanks for any hints, +</I>>><i> +</I>>><i> Steve +</I>>><i> +</I>>><i> +</I>>><i> _______________________________________________ +</I>>><i> Extend mailing list +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>>><i> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000494.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#493">[ date ]</a> + <a href="thread.html#493">[ thread ]</a> + <a href="subject.html#493">[ subject ]</a> + <a href="author.html#493">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000494.html b/_build/static/archives/extend/2015-January/000494.html new file mode 100644 index 00000000..fb053469 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000494.html @@ -0,0 +1,105 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Cowboy + SSL + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54BD5BB0.4000503%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000493.html"> + <LINK REL="Next" HREF="000495.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Cowboy + SSL</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54BD5BB0.4000503%40bestmx.net%3E" + TITLE="[99s-extend] Cowboy + SSL">e at bestmx.net + </A><BR> + <I>Mon Jan 19 20:32:00 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000495.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#494">[ date ]</a> + <a href="thread.html#494">[ thread ]</a> + <a href="subject.html#494">[ subject ]</a> + <a href="author.html#494">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hello. + +i still have a problem with SSL. +as soon as i change cowboy:start_http call to cowboy:start_https +my release refuses to stop (when requested) +and when i revert to "http" it starts and stops normally. + +i am sure it is the only difference: start_http vs. start_https + +i am using relx with default settings as it was provided by cowboy +(Erlang R17, System: Debian "testing") + +here is my_app.erl: + +start(_Type, _Args) -> + Dispatch = + cowboy_router:compile([{'_', [{"/start", ws_handler, []}]}]), + + cowboy:start_https( https, 100, [ {port, 8765} + , {cacertfile, ?Dir ++ "/ssl/cowboy-ca.crt"} + , {certfile, ?Dir ++ "/ssl/server.crt"} + , {keyfile, ?Dir ++ "/ssl/server.key"} ] + , [{env, [{dispatch, Dispatch}]}]), + + online37_sup:start_link(). + +stop(_State) -> ok. + + +once i call: +release/bin/my_release stop + +the erlang.log repeats hundreds of: + +=ERROR REPORT==== 19-Jan-2015::20:06:02 === +Error in process <0.234.0> on node '<A HREF="https://lists.ninenines.eu/listinfo/extend">online37 at 127.0.0.1</A>' with exit value: +{{case_clause,{error,closed}},[{ranch_acceptor,loop,3,[{file,"src/ranch_acceptor.erl"},{line,28}]}]} + + +what could it be? +any misconfiguration of my system (regarding ssl support)? +what exactly does ranch expect from me? + + +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A></li> + <LI>Next message: <A HREF="000495.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#494">[ date ]</a> + <a href="thread.html#494">[ thread ]</a> + <a href="subject.html#494">[ subject ]</a> + <a href="author.html#494">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000495.html b/_build/static/archives/extend/2015-January/000495.html new file mode 100644 index 00000000..155c3fda --- /dev/null +++ b/_build/static/archives/extend/2015-January/000495.html @@ -0,0 +1,138 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Cowboy + SSL + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54BFEFD8.7070003%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000494.html"> + <LINK REL="Next" HREF="000499.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Cowboy + SSL</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54BFEFD8.7070003%40bestmx.net%3E" + TITLE="[99s-extend] Cowboy + SSL">e at bestmx.net + </A><BR> + <I>Wed Jan 21 19:28:40 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000494.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000499.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#495">[ date ]</a> + <a href="thread.html#495">[ thread ]</a> + <a href="subject.html#495">[ subject ]</a> + <a href="author.html#495">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>reading the sources i have found that this crash i am trying to report +is intended behavior, +but +it happens in the middle of the SHUTDOWN procedure! + + +I tried to investigate how a relx's release shuts down +and i have found it is merely one call to: init:stop/0 +nothing else. + +the manual says: + +stop() -> ok + +All applications are taken down smoothly, all code is unloaded, and all +ports are closed before the system terminates. If the -heart command +line flag was given, the heart program is terminated before the Erlang +node terminates. + +I end up totally clueless -- everything is rock solid yet it crashes. +maybe there is some clue in the sequence of shutting down applications? + +does anything controls/defines that sequence? + + + +On 01/19/2015 08:32 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +><i> Hello. +</I>><i> +</I>><i> i still have a problem with SSL. +</I>><i> as soon as i change cowboy:start_http call to cowboy:start_https +</I>><i> my release refuses to stop (when requested) +</I>><i> and when i revert to "http" it starts and stops normally. +</I>><i> +</I>><i> i am sure it is the only difference: start_http vs. start_https +</I>><i> +</I>><i> i am using relx with default settings as it was provided by cowboy +</I>><i> (Erlang R17, System: Debian "testing") +</I>><i> +</I>><i> here is my_app.erl: +</I>><i> +</I>><i> start(_Type, _Args) -> +</I>><i> Dispatch = +</I>><i> cowboy_router:compile([{'_', [{"/start", ws_handler, []}]}]), +</I>><i> +</I>><i> cowboy:start_https( https, 100, [ {port, 8765} +</I>><i> , {cacertfile, ?Dir ++ "/ssl/cowboy-ca.crt"} +</I>><i> , {certfile, ?Dir ++ "/ssl/server.crt"} +</I>><i> , {keyfile, ?Dir ++ "/ssl/server.key"} ] +</I>><i> , [{env, [{dispatch, Dispatch}]}]), +</I>><i> +</I>><i> online37_sup:start_link(). +</I>><i> +</I>><i> stop(_State) -> ok. +</I>><i> +</I>><i> +</I>><i> once i call: +</I>><i> release/bin/my_release stop +</I>><i> +</I>><i> the erlang.log repeats hundreds of: +</I>><i> +</I>><i> =ERROR REPORT==== 19-Jan-2015::20:06:02 === +</I>><i> Error in process <0.234.0> on node '<A HREF="https://lists.ninenines.eu/listinfo/extend">online37 at 127.0.0.1</A>' with exit value: +</I>><i> {{case_clause,{error,closed}},[{ranch_acceptor,loop,3,[{file,"src/ranch_acceptor.erl"},{line,28}]}]} +</I>><i> +</I>><i> +</I>><i> +</I>><i> what could it be? +</I>><i> any misconfiguration of my system (regarding ssl support)? +</I>><i> what exactly does ranch expect from me? +</I>><i> +</I>><i> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I></PRE> + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000494.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000499.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#495">[ date ]</a> + <a href="thread.html#495">[ thread ]</a> + <a href="subject.html#495">[ subject ]</a> + <a href="author.html#495">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000496.html b/_build/static/archives/extend/2015-January/000496.html new file mode 100644 index 00000000..880322a2 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000496.html @@ -0,0 +1,86 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422225008.17343.6.camel%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000500.html"> + <LINK REL="Next" HREF="000497.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422225008.17343.6.camel%40gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Sun Jan 25 23:30:08 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000500.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000497.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#496">[ date ]</a> + <a href="thread.html#496">[ thread ]</a> + <a href="subject.html#496">[ subject ]</a> + <a href="author.html#496">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>I am trying to write a middleware step that will modify the URL in a +request before it gets to the default static request handler. I can not +find an example of how to do this. What I have so far: + +execute( Req, Env ) -> + HostUrl = cowboy_req:host_url(Req), + NewUrl = rewrite( HostUrl ), + NewReq = ??? + {ok, NewReq, Env}. + +How do I modify a Request object so that it contains my modified URL, +which cowboy_static will then process normally? My 'rewrite' function +converts logical directory names into real file-system paths, using a +dynamic algorithm that can not be simply written into cowboy's dispatch +rules. + +The dispatch rules I am using is as follows, where 'bz_libmap' is my +module containing the code above: + {"/music/[...]", cowboy_static, {dir, bz_libmap, ""}}, + +-------------- next part -------------- +An HTML attachment was scrubbed... +URL: <<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20150125/370811e4/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20150125/370811e4/attachment.html</A>> +</PRE> + + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000500.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000497.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#496">[ date ]</a> + <a href="thread.html#496">[ thread ]</a> + <a href="subject.html#496">[ subject ]</a> + <a href="author.html#496">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000497.html b/_build/static/archives/extend/2015-January/000497.html new file mode 100644 index 00000000..4cb02878 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000497.html @@ -0,0 +1,76 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3CCAOdRa2a5%2B57KeT3xWwabFxoWSMU8yysqVZvQFVQVVL-FJCAz4w%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000496.html"> + <LINK REL="Next" HREF="000498.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3CCAOdRa2a5%2B57KeT3xWwabFxoWSMU8yysqVZvQFVQVVL-FJCAz4w%40mail.gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Mon Jan 26 06:09:49 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000496.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000498.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#497">[ date ]</a> + <a href="thread.html#497">[ thread ]</a> + <a href="subject.html#497">[ subject ]</a> + <a href="author.html#497">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Some progress. I think this is how the code should look in my middleware: + +execute( Req, Env ) -> + HostUrl = cowboy_req:path(Req), + NewUrl = rewrite( HostUrl ), + NewReq = cowboy_req:set( [{path,NewUrl}], Req), + {ok, NewReq, Env}. + +It is getting called, but cowboy_static is being passed the wrong +thing afterward. I think I do not understand how to write the +dispatch rule. The value of NewUrl is an absolute filename. + + {"/music/[...]", cowboy_static, {dir, bz_libmap, ""}}, +</PRE> + + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000496.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000498.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#497">[ date ]</a> + <a href="thread.html#497">[ thread ]</a> + <a href="subject.html#497">[ subject ]</a> + <a href="author.html#497">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000498.html b/_build/static/archives/extend/2015-January/000498.html new file mode 100644 index 00000000..5762dfa4 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000498.html @@ -0,0 +1,88 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C61662.4050309%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000497.html"> + <LINK REL="Next" HREF="000501.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C61662.4050309%40ninenines.eu%3E" + TITLE="[99s-extend] Rewriting URLs">essen at ninenines.eu + </A><BR> + <I>Mon Jan 26 11:26:42 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000497.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000501.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#498">[ date ]</a> + <a href="thread.html#498">[ thread ]</a> + <a href="subject.html#498">[ subject ]</a> + <a href="author.html#498">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>You have to change path_info too if your middleware is after the router. + +On 01/26/2015 06:09 AM, Paul Dickson wrote: +><i> Some progress. I think this is how the code should look in my middleware: +</I>><i> +</I>><i> execute( Req, Env ) -> +</I>><i> HostUrl = cowboy_req:path(Req), +</I>><i> NewUrl = rewrite( HostUrl ), +</I>><i> NewReq = cowboy_req:set( [{path,NewUrl}], Req), +</I>><i> {ok, NewReq, Env}. +</I>><i> +</I>><i> It is getting called, but cowboy_static is being passed the wrong +</I>><i> thing afterward. I think I do not understand how to write the +</I>><i> dispatch rule. The value of NewUrl is an absolute filename. +</I>><i> +</I>><i> {"/music/[...]", cowboy_static, {dir, bz_libmap, ""}}, +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000497.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000501.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#498">[ date ]</a> + <a href="thread.html#498">[ thread ]</a> + <a href="subject.html#498">[ subject ]</a> + <a href="author.html#498">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000499.html b/_build/static/archives/extend/2015-January/000499.html new file mode 100644 index 00000000..36cc0ebc --- /dev/null +++ b/_build/static/archives/extend/2015-January/000499.html @@ -0,0 +1,153 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Cowboy + SSL + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54C6170E.6030709%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000495.html"> + <LINK REL="Next" HREF="000500.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Cowboy + SSL</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54C6170E.6030709%40ninenines.eu%3E" + TITLE="[99s-extend] Cowboy + SSL">essen at ninenines.eu + </A><BR> + <I>Mon Jan 26 11:29:34 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000495.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000500.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#499">[ date ]</a> + <a href="thread.html#499">[ thread ]</a> + <a href="subject.html#499">[ subject ]</a> + <a href="author.html#499">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Hey, this is a known issue with recent Erlang versions: +<A HREF="https://github.com/ninenines/ranch/issues/90">https://github.com/ninenines/ranch/issues/90</A> + +I don't have a good fix for it other than requiring ssl for using +Cowboy/Ranch. I probably will. + +On 01/21/2015 07:28 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +><i> reading the sources i have found that this crash i am trying to report +</I>><i> is intended behavior, +</I>><i> but +</I>><i> it happens in the middle of the SHUTDOWN procedure! +</I>><i> +</I>><i> +</I>><i> I tried to investigate how a relx's release shuts down +</I>><i> and i have found it is merely one call to: init:stop/0 +</I>><i> nothing else. +</I>><i> +</I>><i> the manual says: +</I>><i> +</I>><i> stop() -> ok +</I>><i> +</I>><i> All applications are taken down smoothly, all code is unloaded, and all +</I>><i> ports are closed before the system terminates. If the -heart command +</I>><i> line flag was given, the heart program is terminated before the Erlang +</I>><i> node terminates. +</I>><i> +</I>><i> I end up totally clueless -- everything is rock solid yet it crashes. +</I>><i> maybe there is some clue in the sequence of shutting down applications? +</I>><i> +</I>><i> does anything controls/defines that sequence? +</I>><i> +</I>><i> +</I>><i> +</I>><i> On 01/19/2015 08:32 PM, <A HREF="https://lists.ninenines.eu/listinfo/extend">e at bestmx.net</A> wrote: +</I>>><i> Hello. +</I>>><i> +</I>>><i> i still have a problem with SSL. +</I>>><i> as soon as i change cowboy:start_http call to cowboy:start_https +</I>>><i> my release refuses to stop (when requested) +</I>>><i> and when i revert to "http" it starts and stops normally. +</I>>><i> +</I>>><i> i am sure it is the only difference: start_http vs. start_https +</I>>><i> +</I>>><i> i am using relx with default settings as it was provided by cowboy +</I>>><i> (Erlang R17, System: Debian "testing") +</I>>><i> +</I>>><i> here is my_app.erl: +</I>>><i> +</I>>><i> start(_Type, _Args) -> +</I>>><i> Dispatch = +</I>>><i> cowboy_router:compile([{'_', [{"/start", ws_handler, []}]}]), +</I>>><i> +</I>>><i> cowboy:start_https( https, 100, [ {port, 8765} +</I>>><i> , {cacertfile, ?Dir ++ "/ssl/cowboy-ca.crt"} +</I>>><i> , {certfile, ?Dir ++ "/ssl/server.crt"} +</I>>><i> , {keyfile, ?Dir ++ "/ssl/server.key"} ] +</I>>><i> , [{env, [{dispatch, Dispatch}]}]), +</I>>><i> +</I>>><i> online37_sup:start_link(). +</I>>><i> +</I>>><i> stop(_State) -> ok. +</I>>><i> +</I>>><i> +</I>>><i> once i call: +</I>>><i> release/bin/my_release stop +</I>>><i> +</I>>><i> the erlang.log repeats hundreds of: +</I>>><i> +</I>>><i> =ERROR REPORT==== 19-Jan-2015::20:06:02 === +</I>>><i> Error in process <0.234.0> on node '<A HREF="https://lists.ninenines.eu/listinfo/extend">online37 at 127.0.0.1</A>' with exit value: +</I>>><i> {{case_clause,{error,closed}},[{ranch_acceptor,loop,3,[{file,"src/ranch_acceptor.erl"},{line,28}]}]} +</I>>><i> +</I>>><i> +</I>>><i> +</I>>><i> +</I>>><i> what could it be? +</I>>><i> any misconfiguration of my system (regarding ssl support)? +</I>>><i> what exactly does ranch expect from me? +</I>>><i> +</I>>><i> +</I>>><i> _______________________________________________ +</I>>><i> Extend mailing list +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I>><i> _______________________________________________ +</I>><i> Extend mailing list +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A> +</I>><i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000495.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000500.html">[99s-extend] Cowboy + SSL +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#499">[ date ]</a> + <a href="thread.html#499">[ thread ]</a> + <a href="subject.html#499">[ subject ]</a> + <a href="author.html#499">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000500.html b/_build/static/archives/extend/2015-January/000500.html new file mode 100644 index 00000000..c77ec536 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000500.html @@ -0,0 +1,145 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Cowboy + SSL + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54C64FA0.7040808%40bestmx.net%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000499.html"> + <LINK REL="Next" HREF="000496.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Cowboy + SSL</H1> + <B>e at bestmx.net</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Cowboy%20%2B%20SSL&In-Reply-To=%3C54C64FA0.7040808%40bestmx.net%3E" + TITLE="[99s-extend] Cowboy + SSL">e at bestmx.net + </A><BR> + <I>Mon Jan 26 15:30:56 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000499.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000496.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#500">[ date ]</a> + <a href="thread.html#500">[ thread ]</a> + <a href="subject.html#500">[ subject ]</a> + <a href="author.html#500">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>><i> Hey, this is a known issue with recent Erlang versions: +</I>><i> <A HREF="https://github.com/ninenines/ranch/issues/90">https://github.com/ninenines/ranch/issues/90</A> +</I> +sorry i didn't know a keyword for googling this issue + +well, it seems to me very interesting problem -- basically a dependency +that appears in runtime (if i do not pass an ssl socket to the ranch, +there will be no dependency). + +i dare to suggest few alternative approaches to the solution: + +(A) make the shutdown state distinguishable for the 'ranch_acceptor', so +that not to crash in one particular sub case of the preliminary socket +close. (a terrible STATEFUL solution, i do not dare to suggest how to +pass this state to the acceptor) + +(B) make it possible *in general* to pass additional dependencies to the +applications that your application depends on. (as for now i can define +in my .app.src any arbitrary deps for the "top" application, and then +this .app.src will be processed anyway, there is no harm in improving +this .app preparation procedure one step further, in order to affect +.app files of subordinate applications. (it is perhaps a suggestion for +relx devs, anyway, nobody forbid us to discuss it)) + +there are some alternative ways to achieve (B) + +(B1) +it would be a mere change of the type of the 'applications' option in +.app.src -- we may make it a tree instead of a list. +for example: + +{applications, [ + kernel, + stdlib, + mnesia, + {cowboy, [{ranch, [ssl]}]} +]} +%% which reads: my app requires all these, +%% and cowboy must require ranch and ranch must require ssl + +it could (or should?) be shortened to: + +(B2) +%% my app requires all these, +%% and *IF* 'ranch' is somehow required then it must require ssl +{applications, [ + kernel, + stdlib, + mnesia, + cowboy, + {ranch, [ssl]} +]} + +this in turn makes separation possible: + +(B3) +we specify all applications we require as a plain list, and then we +specify PARTIAL ORDER: we need some certain pairs of applications to be +started in certain sequences. + +{applications, [ + kernel, + stdlib, + mnesia, + ssl, + cowboy +]}, +{sequence, [ + [ssl, ranch], +]} + +%% which reads: my app requires those apps to start +%% and among these it requires the ssl to be started BEFORE ranch + +%% generally we may specify any amount +%% of subsequences we care about: +{sequence, [ + [ssl, ranch], + [ranch, cowboy_lib, cowboy], + [appA1, appA2, appA3, ...], + ... +]} + +of course the specified sequence MIGHT BE IMPOSSIBLE (self-refuting) and +it needs to be verified, which is formally possible. +</PRE> + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000499.html">[99s-extend] Cowboy + SSL +</A></li> + <LI>Next message: <A HREF="000496.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#500">[ date ]</a> + <a href="thread.html#500">[ thread ]</a> + <a href="subject.html#500">[ subject ]</a> + <a href="author.html#500">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000501.html b/_build/static/archives/extend/2015-January/000501.html new file mode 100644 index 00000000..71c5f68c --- /dev/null +++ b/_build/static/archives/extend/2015-January/000501.html @@ -0,0 +1,103 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422309249.26262.15.camel%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000498.html"> + <LINK REL="Next" HREF="000502.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422309249.26262.15.camel%40gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Mon Jan 26 22:54:09 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000498.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000502.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#501">[ date ]</a> + <a href="thread.html#501">[ thread ]</a> + <a href="subject.html#501">[ subject ]</a> + <a href="author.html#501">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On Mon, 2015-01-26 at 11:26 +0100, Loïc Hoguin wrote: +><i> You have to change path_info too if your middleware is after the router. +</I>><i> +</I>I have added that. My cowboy:start_http parameters include this: + {middlewares, [cowboy_router, bz_libmap, cowboy_handler]} +which I think means bz_libmap will get called on *every* request. This +seems to work. Among the dispatch rules is this line: + {"/music/[...]", cowboy_static, {dir, "", ""}}, +so any request starting with "/music/ will do a standard file fetch. +But due to the middlewares setup, bz_libmap will get a chance to +look at it first. + +bz_libmap checks the path to see if it starts with "/music/", and if +not, it just returns {ok,Req,Env} and lets processing proceed normally. +This works, and other dispatch rules take care of it, usually fetching +files from priv_dir. + +But if bz_libmap sees "/music/" at the start of the URL it transforms +the URL into something else, an absolute filename typically of an mp3 +file. This is what I want cowboy_static to process. Hopefully, this +does not run through the dispatch rules again. + +bz_libmap computes a new path and a new path_info and sets them with a +cowboy_req:set call. I am not sure what path_info should look like at +this point, because the path is no longer covered by any of the dispatch +rules. I do not want it to be, as that would allow a browser to fetch +any file in the file system, unchecked. + +But what happens is any attempts to fetch /music/Anything result in a +status 400 error. + +The other approach I was considering was to make my own handler, based +on cowboy_static, that does the URL/File transformation internally. But +even that might not be right, since it eventually upgrades to +cowboy_rest and there is more processing after that. This approach +seems inelegant. + +The actual only call to file:open I found in all of cowboy is in +cowboy_spdy. + + + +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000498.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000502.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#501">[ date ]</a> + <a href="thread.html#501">[ thread ]</a> + <a href="subject.html#501">[ subject ]</a> + <a href="author.html#501">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000502.html b/_build/static/archives/extend/2015-January/000502.html new file mode 100644 index 00000000..601c9e23 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000502.html @@ -0,0 +1,79 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C764D5.5020404%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000501.html"> + <LINK REL="Next" HREF="000503.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C764D5.5020404%40ninenines.eu%3E" + TITLE="[99s-extend] Rewriting URLs">essen at ninenines.eu + </A><BR> + <I>Tue Jan 27 11:13:41 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000501.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000503.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#502">[ date ]</a> + <a href="thread.html#502">[ thread ]</a> + <a href="subject.html#502">[ subject ]</a> + <a href="author.html#502">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On 01/26/2015 10:54 PM, Paul Dickson wrote: +><i> On Mon, 2015-01-26 at 11:26 +0100, Loïc Hoguin wrote: +</I>>><i> You have to change path_info too if your middleware is after the router. +</I>>><i> +</I>><i> I have added that. My cowboy:start_http parameters include this: +</I>><i> {middlewares, [cowboy_router, bz_libmap, cowboy_handler]} +</I>><i> which I think means bz_libmap will get called on *every* request. This +</I>><i> seems to work. Among the dispatch rules is this line: +</I>><i> {"/music/[...]", cowboy_static, {dir, "", ""}}, +</I> +Is it the actual line? Cause {dir, "", ""} is wrong, the third element +must be an etag or mimetype tuple. + +Otherwise, I need a more complete error, or code. + +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000501.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000503.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#502">[ date ]</a> + <a href="thread.html#502">[ thread ]</a> + <a href="subject.html#502">[ subject ]</a> + <a href="author.html#502">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000503.html b/_build/static/archives/extend/2015-January/000503.html new file mode 100644 index 00000000..4ed34cd0 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000503.html @@ -0,0 +1,97 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422364068.30127.5.camel%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000502.html"> + <LINK REL="Next" HREF="000504.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422364068.30127.5.camel%40gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Tue Jan 27 14:07:48 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000502.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000504.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#503">[ date ]</a> + <a href="thread.html#503">[ thread ]</a> + <a href="subject.html#503">[ subject ]</a> + <a href="author.html#503">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On Tue, 2015-01-27 at 11:13 +0100, Loïc Hoguin wrote: +><i> On 01/26/2015 10:54 PM, Paul Dickson wrote: +</I>><i> > On Mon, 2015-01-26 at 11:26 +0100, Loïc Hoguin wrote: +</I>><i> >> You have to change path_info too if your middleware is after the router. +</I>><i> >> +</I>><i> > I have added that. My cowboy:start_http parameters include this: +</I>><i> > {middlewares, [cowboy_router, bz_libmap, cowboy_handler]} +</I>><i> > which I think means bz_libmap will get called on *every* request. This +</I>><i> > seems to work. Among the dispatch rules is this line: +</I>><i> > {"/music/[...]", cowboy_static, {dir, "", ""}}, +</I>><i> +</I>><i> Is it the actual line? Cause {dir, "", ""} is wrong, the third element +</I>><i> must be an etag or mimetype tuple. +</I>><i> +</I>><i> Otherwise, I need a more complete error, or code. +</I> +I changed the rule line to: + + {"/music/[...]", cowboy_static, {dir, "", [ + {mimetypes, cow_mimetypes, all}]}}, + +The client I am using is 'mplayer'. The error message is: + + Server returned 400:Bad Request + Failed to parse header. + Failed, exiting. + +I also included some tracing in my middleware module to print +out the new path and path_info values it is setting, showing +the result of the rewrite algorithm. + + Path <<"/music/Library/Folk/Swiss/Alphorn.ogg">> + Info [<<"/">>,<<"music">>,<<"Library">>,<<"Folk">>,<<"Swiss">>, + <<"Alphorn.ogg">>] + + +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000502.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000504.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#503">[ date ]</a> + <a href="thread.html#503">[ thread ]</a> + <a href="subject.html#503">[ subject ]</a> + <a href="author.html#503">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000504.html b/_build/static/archives/extend/2015-January/000504.html new file mode 100644 index 00000000..3609d77f --- /dev/null +++ b/_build/static/archives/extend/2015-January/000504.html @@ -0,0 +1,70 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C78E62.9020307%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000503.html"> + <LINK REL="Next" HREF="000505.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C78E62.9020307%40ninenines.eu%3E" + TITLE="[99s-extend] Rewriting URLs">essen at ninenines.eu + </A><BR> + <I>Tue Jan 27 14:10:58 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000503.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000505.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#504">[ date ]</a> + <a href="thread.html#504">[ thread ]</a> + <a href="subject.html#504">[ subject ]</a> + <a href="author.html#504">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On 01/27/2015 02:07 PM, Paul Dickson wrote: +><i> Info [<<"/">>,<<"music">>,<<"Library">>,<<"Folk">>,<<"Swiss">>, +</I>><i> <<"Alphorn.ogg">>] +</I> +Should be from Library onward, and not include the first two elements. + +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000503.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000505.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#504">[ date ]</a> + <a href="thread.html#504">[ thread ]</a> + <a href="subject.html#504">[ subject ]</a> + <a href="author.html#504">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000505.html b/_build/static/archives/extend/2015-January/000505.html new file mode 100644 index 00000000..e842c26d --- /dev/null +++ b/_build/static/archives/extend/2015-January/000505.html @@ -0,0 +1,82 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422365070.30127.8.camel%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000504.html"> + <LINK REL="Next" HREF="000506.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422365070.30127.8.camel%40gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Tue Jan 27 14:24:30 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000504.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000506.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#505">[ date ]</a> + <a href="thread.html#505">[ thread ]</a> + <a href="subject.html#505">[ subject ]</a> + <a href="author.html#505">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On Tue, 2015-01-27 at 14:10 +0100, Loïc Hoguin wrote: + +><i> On 01/27/2015 02:07 PM, Paul Dickson wrote: +</I>><i> > Info [<<"/">>,<<"music">>,<<"Library">>,<<"Folk">>,<<"Swiss">>, +</I>><i> > <<"Alphorn.ogg">>] +</I>><i> +</I>><i> Should be from Library onward, and not include the first two elements. +</I>><i> +</I> + +This is perhaps a confusing case, because the incoming URL and the +transformed URL both start with "/music". What if that was not the +case, and the resulting path was, for example, + + /home/me/music/Folk/Swiss/Alphorn.ogg + +which does not match anything in the rules at all? Is that allowed, or +must the rewritten URL also match a rule? +-------------- next part -------------- +An HTML attachment was scrubbed... +URL: <<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20150127/1916d612/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20150127/1916d612/attachment.html</A>> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000504.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000506.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#505">[ date ]</a> + <a href="thread.html#505">[ thread ]</a> + <a href="subject.html#505">[ subject ]</a> + <a href="author.html#505">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000506.html b/_build/static/archives/extend/2015-January/000506.html new file mode 100644 index 00000000..851bc42f --- /dev/null +++ b/_build/static/archives/extend/2015-January/000506.html @@ -0,0 +1,87 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C792B0.3040406%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000505.html"> + <LINK REL="Next" HREF="000507.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54C792B0.3040406%40ninenines.eu%3E" + TITLE="[99s-extend] Rewriting URLs">essen at ninenines.eu + </A><BR> + <I>Tue Jan 27 14:29:20 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000505.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000507.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#506">[ date ]</a> + <a href="thread.html#506">[ thread ]</a> + <a href="subject.html#506">[ subject ]</a> + <a href="author.html#506">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>On 01/27/2015 02:24 PM, Paul Dickson wrote: +><i> On Tue, 2015-01-27 at 14:10 +0100, Loïc Hoguin wrote: +</I>>><i> On 01/27/2015 02:07 PM, Paul Dickson wrote: +</I>>><i> > Info [<<"/">>,<<"music">>,<<"Library">>,<<"Folk">>,<<"Swiss">>, +</I>>><i> > <<"Alphorn.ogg">>] +</I>>><i> +</I>>><i> Should be from Library onward, and not include the first two elements. +</I>>><i> +</I>><i> +</I>><i> This is perhaps a confusing case, because the incoming URL and the +</I>><i> transformed URL both start with "/music". What if that was not the +</I>><i> case, and the resulting path was, for example, +</I>><i> +</I>><i> /home/me/music/Folk/Swiss/Alphorn.ogg +</I>><i> +</I>><i> which does not match anything in the rules at all? Is that allowed, or +</I>><i> must the rewritten URL also match a rule? +</I> +Middlewares execute in order and only once, so not sure what you're asking. + +Again I'd need to see some code to help you as I am quite confused by +what you are trying to do and what your issue is. + +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000505.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000507.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#506">[ date ]</a> + <a href="thread.html#506">[ thread ]</a> + <a href="subject.html#506">[ subject ]</a> + <a href="author.html#506">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000507.html b/_build/static/archives/extend/2015-January/000507.html new file mode 100644 index 00000000..a16a39c2 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000507.html @@ -0,0 +1,100 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422366254.30127.15.camel%40gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000506.html"> + <LINK REL="Next" HREF="000508.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C1422366254.30127.15.camel%40gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Tue Jan 27 14:44:14 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000506.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000508.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#507">[ date ]</a> + <a href="thread.html#507">[ thread ]</a> + <a href="subject.html#507">[ subject ]</a> + <a href="author.html#507">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>Ok, here is all the code in bz_libmap.erl + +execute(Req, Env) -> + Path = cowboy_req:path(Req), + Parts = filename:split(Path), + + case cowboy_req:method(Req) of + <<"GET">> -> + % Check for "/music/" requests + rewrite( Parts, Req, Env ); + _Other -> + {ok, Req, Env} + end. + +rewrite( [<<"/">>, <<"music">>, LibName | UrlParts], Req, Env ) -> + % We want URLs of the form "/music/LIBNAME/everythingelse" + % Get library definition. If we do not know that name, then they + % are asking for something that does not exist. + case bz_db:get_library( LibName ) of + [] -> + io:format("No such library '~s'~n", [LibName] ), + {stop, cowboy_req:reply(404, Req)}; + + L when is_record(L,library) -> + % Replace the library name with the library base. + % This will be the head of an absolute file path. + LibBase = L#library.base, + NewPath = filename:join([LibBase | UrlParts]), + NewInfo = filename:split(NewPath), + Req2 = cowboy_req:set( [ + {path_info,[NewPath]}, + {path, [NewPath]}], Req), + {ok, Req2, Env} + end; +rewrite( _AnythingElse, Req, Env ) -> + {ok, Req, Env}. + + + +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000506.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000508.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#507">[ date ]</a> + <a href="thread.html#507">[ thread ]</a> + <a href="subject.html#507">[ subject ]</a> + <a href="author.html#507">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000508.html b/_build/static/archives/extend/2015-January/000508.html new file mode 100644 index 00000000..225df1f8 --- /dev/null +++ b/_build/static/archives/extend/2015-January/000508.html @@ -0,0 +1,69 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3CCAOdRa2Z-13J_0uGtKYBjXvmiyX0bCnNXbCAxRmkr4RkgyrhDJA%40mail.gmail.com%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000507.html"> + <LINK REL="Next" HREF="000509.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Paul Dickson</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3CCAOdRa2Z-13J_0uGtKYBjXvmiyX0bCnNXbCAxRmkr4RkgyrhDJA%40mail.gmail.com%3E" + TITLE="[99s-extend] Rewriting URLs">pdtwonotes at gmail.com + </A><BR> + <I>Thu Jan 29 23:23:35 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000507.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000509.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#508">[ date ]</a> + <a href="thread.html#508">[ thread ]</a> + <a href="subject.html#508">[ subject ]</a> + <a href="author.html#508">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>The status 400 is coming from cowboy_rest, when it complains that +handler cowboy_static lacks the functions 'service_available', +'known_methods', 'uri_too_long', and 'allowed_methods'. Which indeed +it does not have. + +The only place I mention cowboy_static is in the dispatch rule: + {"/music/[...]", cowboy_static, {dir, "", [ + {mimetypes, cow_mimetypes, all}]}}, +</PRE> + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000507.html">[99s-extend] Rewriting URLs +</A></li> + <LI>Next message: <A HREF="000509.html">[99s-extend] Rewriting URLs +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#508">[ date ]</a> + <a href="thread.html#508">[ thread ]</a> + <a href="subject.html#508">[ subject ]</a> + <a href="author.html#508">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/000509.html b/_build/static/archives/extend/2015-January/000509.html new file mode 100644 index 00000000..8d1ab69b --- /dev/null +++ b/_build/static/archives/extend/2015-January/000509.html @@ -0,0 +1,74 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <TITLE> [99s-extend] Rewriting URLs + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54CAB33B.7070606%40ninenines.eu%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <style type="text/css"> + pre { + white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */ + } + </style> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="000508.html"> + + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[99s-extend] Rewriting URLs</H1> + <B>Loïc Hoguin</B> + <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Rewriting%20URLs&In-Reply-To=%3C54CAB33B.7070606%40ninenines.eu%3E" + TITLE="[99s-extend] Rewriting URLs">essen at ninenines.eu + </A><BR> + <I>Thu Jan 29 23:24:59 CET 2015</I> + <P><UL> + <LI>Previous message: <A HREF="000508.html">[99s-extend] Rewriting URLs +</A></li> + + <LI> <B>Messages sorted by:</B> + <a href="date.html#509">[ date ]</a> + <a href="thread.html#509">[ thread ]</a> + <a href="subject.html#509">[ subject ]</a> + <a href="author.html#509">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>They are optional callbacks, so I doubt that's it. + +On 01/29/2015 11:23 PM, Paul Dickson wrote: +><i> The status 400 is coming from cowboy_rest, when it complains that +</I>><i> handler cowboy_static lacks the functions 'service_available', +</I>><i> 'known_methods', 'uri_too_long', and 'allowed_methods'. Which indeed +</I>><i> it does not have. +</I>><i> +</I>><i> The only place I mention cowboy_static is in the dispatch rule: +</I>><i> {"/music/[...]", cowboy_static, {dir, "", [ +</I>><i> {mimetypes, cow_mimetypes, all}]}}, +</I>><i> +</I> +-- +Loïc Hoguin +<A HREF="http://ninenines.eu">http://ninenines.eu</A> +</PRE> + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="000508.html">[99s-extend] Rewriting URLs +</A></li> + + <LI> <B>Messages sorted by:</B> + <a href="date.html#509">[ date ]</a> + <a href="thread.html#509">[ thread ]</a> + <a href="subject.html#509">[ subject ]</a> + <a href="author.html#509">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend +mailing list</a><br> +</body></html> diff --git a/_build/static/archives/extend/2015-January/author.html b/_build/static/archives/extend/2015-January/author.html new file mode 100644 index 00000000..eb2c5a79 --- /dev/null +++ b/_build/static/archives/extend/2015-January/author.html @@ -0,0 +1,177 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend January 2015 Archive by author</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>January 2015 Archives by author</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Sat Jan 10 14:55:58 CET 2015</i><br> + <b>Ending:</b> <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Messages:</b> 26<p> + <ul> + +<LI><A HREF="000496.html">[99s-extend] Rewriting URLs +</A><A NAME="496"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000497.html">[99s-extend] Rewriting URLs +</A><A NAME="497"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000501.html">[99s-extend] Rewriting URLs +</A><A NAME="501"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000503.html">[99s-extend] Rewriting URLs +</A><A NAME="503"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000505.html">[99s-extend] Rewriting URLs +</A><A NAME="505"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000507.html">[99s-extend] Rewriting URLs +</A><A NAME="507"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000508.html">[99s-extend] Rewriting URLs +</A><A NAME="508"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000485.html">[99s-extend] websocket over ssl +</A><A NAME="485"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000487.html">[99s-extend] websocket over ssl +</A><A NAME="487"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="492"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="493"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000498.html">[99s-extend] Rewriting URLs +</A><A NAME="498"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000499.html">[99s-extend] Cowboy + SSL +</A><A NAME="499"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000502.html">[99s-extend] Rewriting URLs +</A><A NAME="502"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000504.html">[99s-extend] Rewriting URLs +</A><A NAME="504"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000506.html">[99s-extend] Rewriting URLs +</A><A NAME="506"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000509.html">[99s-extend] Rewriting URLs +</A><A NAME="509"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="491"> </A> +<I>Stefan Strigler +</I> + +<LI><A HREF="000488.html">[99s-extend] websocket over ssl +</A><A NAME="488"> </A> +<I>Lee Sylvester +</I> + +<LI><A HREF="000484.html">[99s-extend] websocket over ssl +</A><A NAME="484"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000486.html">[99s-extend] websocket over ssl +</A><A NAME="486"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000489.html">[99s-extend] websocket over ssl +</A><A NAME="489"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000490.html">[99s-extend] websocket over ssl +</A><A NAME="490"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000494.html">[99s-extend] Cowboy + SSL +</A><A NAME="494"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000495.html">[99s-extend] Cowboy + SSL +</A><A NAME="495"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000500.html">[99s-extend] Cowboy + SSL +</A><A NAME="500"> </A> +<I>e at bestmx.net +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Archived on:</b> <i>Thu Jan 29 23:24:56 CET 2015</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/_build/static/archives/extend/2015-January/date.html b/_build/static/archives/extend/2015-January/date.html new file mode 100644 index 00000000..5cc9dfee --- /dev/null +++ b/_build/static/archives/extend/2015-January/date.html @@ -0,0 +1,177 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend January 2015 Archive by date</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>January 2015 Archives by date</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Sat Jan 10 14:55:58 CET 2015</i><br> + <b>Ending:</b> <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Messages:</b> 26<p> + <ul> + +<LI><A HREF="000484.html">[99s-extend] websocket over ssl +</A><A NAME="484"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000485.html">[99s-extend] websocket over ssl +</A><A NAME="485"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000486.html">[99s-extend] websocket over ssl +</A><A NAME="486"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000487.html">[99s-extend] websocket over ssl +</A><A NAME="487"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000488.html">[99s-extend] websocket over ssl +</A><A NAME="488"> </A> +<I>Lee Sylvester +</I> + +<LI><A HREF="000489.html">[99s-extend] websocket over ssl +</A><A NAME="489"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000490.html">[99s-extend] websocket over ssl +</A><A NAME="490"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="491"> </A> +<I>Stefan Strigler +</I> + +<LI><A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="492"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="493"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000494.html">[99s-extend] Cowboy + SSL +</A><A NAME="494"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000495.html">[99s-extend] Cowboy + SSL +</A><A NAME="495"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000496.html">[99s-extend] Rewriting URLs +</A><A NAME="496"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000497.html">[99s-extend] Rewriting URLs +</A><A NAME="497"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000498.html">[99s-extend] Rewriting URLs +</A><A NAME="498"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000499.html">[99s-extend] Cowboy + SSL +</A><A NAME="499"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000500.html">[99s-extend] Cowboy + SSL +</A><A NAME="500"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000501.html">[99s-extend] Rewriting URLs +</A><A NAME="501"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000502.html">[99s-extend] Rewriting URLs +</A><A NAME="502"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000503.html">[99s-extend] Rewriting URLs +</A><A NAME="503"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000504.html">[99s-extend] Rewriting URLs +</A><A NAME="504"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000505.html">[99s-extend] Rewriting URLs +</A><A NAME="505"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000506.html">[99s-extend] Rewriting URLs +</A><A NAME="506"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000507.html">[99s-extend] Rewriting URLs +</A><A NAME="507"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000508.html">[99s-extend] Rewriting URLs +</A><A NAME="508"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000509.html">[99s-extend] Rewriting URLs +</A><A NAME="509"> </A> +<I>Loïc Hoguin +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Archived on:</b> <i>Thu Jan 29 23:24:56 CET 2015</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/_build/static/archives/extend/2015-January/index.html b/_build/static/archives/extend/2015-January/index.html new file mode 120000 index 00000000..db4b46f7 --- /dev/null +++ b/_build/static/archives/extend/2015-January/index.html @@ -0,0 +1 @@ +thread.html
\ No newline at end of file diff --git a/_build/static/archives/extend/2015-January/subject.html b/_build/static/archives/extend/2015-January/subject.html new file mode 100644 index 00000000..f8a9e2f0 --- /dev/null +++ b/_build/static/archives/extend/2015-January/subject.html @@ -0,0 +1,177 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend January 2015 Archive by subject</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>January 2015 Archives by subject</h1> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Sat Jan 10 14:55:58 CET 2015</i><br> + <b>Ending:</b> <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Messages:</b> 26<p> + <ul> + +<LI><A HREF="000494.html">[99s-extend] Cowboy + SSL +</A><A NAME="494"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000495.html">[99s-extend] Cowboy + SSL +</A><A NAME="495"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000499.html">[99s-extend] Cowboy + SSL +</A><A NAME="499"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000500.html">[99s-extend] Cowboy + SSL +</A><A NAME="500"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="491"> </A> +<I>Stefan Strigler +</I> + +<LI><A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="492"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="493"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000496.html">[99s-extend] Rewriting URLs +</A><A NAME="496"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000497.html">[99s-extend] Rewriting URLs +</A><A NAME="497"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000498.html">[99s-extend] Rewriting URLs +</A><A NAME="498"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000501.html">[99s-extend] Rewriting URLs +</A><A NAME="501"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000502.html">[99s-extend] Rewriting URLs +</A><A NAME="502"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000503.html">[99s-extend] Rewriting URLs +</A><A NAME="503"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000504.html">[99s-extend] Rewriting URLs +</A><A NAME="504"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000505.html">[99s-extend] Rewriting URLs +</A><A NAME="505"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000506.html">[99s-extend] Rewriting URLs +</A><A NAME="506"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000507.html">[99s-extend] Rewriting URLs +</A><A NAME="507"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000508.html">[99s-extend] Rewriting URLs +</A><A NAME="508"> </A> +<I>Paul Dickson +</I> + +<LI><A HREF="000509.html">[99s-extend] Rewriting URLs +</A><A NAME="509"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000484.html">[99s-extend] websocket over ssl +</A><A NAME="484"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000485.html">[99s-extend] websocket over ssl +</A><A NAME="485"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000486.html">[99s-extend] websocket over ssl +</A><A NAME="486"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000487.html">[99s-extend] websocket over ssl +</A><A NAME="487"> </A> +<I>Loïc Hoguin +</I> + +<LI><A HREF="000488.html">[99s-extend] websocket over ssl +</A><A NAME="488"> </A> +<I>Lee Sylvester +</I> + +<LI><A HREF="000489.html">[99s-extend] websocket over ssl +</A><A NAME="489"> </A> +<I>e at bestmx.net +</I> + +<LI><A HREF="000490.html">[99s-extend] websocket over ssl +</A><A NAME="490"> </A> +<I>e at bestmx.net +</I> + + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Archived on:</b> <i>Thu Jan 29 23:24:56 CET 2015</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + <a href="thread.html#start">[ thread ]</a> + + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + diff --git a/_build/static/archives/extend/2015-January/thread.html b/_build/static/archives/extend/2015-January/thread.html new file mode 100644 index 00000000..2cfb9866 --- /dev/null +++ b/_build/static/archives/extend/2015-January/thread.html @@ -0,0 +1,227 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> + <HEAD> + <title>The Extend January 2015 Archive by thread</title> + <META NAME="robots" CONTENT="noindex,follow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <a name="start"></A> + <h1>January 2015 Archives by thread</h1> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p><b>Starting:</b> <i>Sat Jan 10 14:55:58 CET 2015</i><br> + <b>Ending:</b> <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Messages:</b> 26<p> + <ul> + +<!--0 01420898158.484- --> +<LI><A HREF="000484.html">[99s-extend] websocket over ssl +</A><A NAME="484"> </A> +<I>e at bestmx.net +</I> + +<UL> +<!--1 01420898158.484-01420899664.485- --> +<LI><A HREF="000485.html">[99s-extend] websocket over ssl +</A><A NAME="485"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01420898158.484-01420899664.485-01420900132.486- --> +<LI><A HREF="000486.html">[99s-extend] websocket over ssl +</A><A NAME="486"> </A> +<I>e at bestmx.net +</I> + +<UL> +<!--3 01420898158.484-01420899664.485-01420900132.486-01420900481.487- --> +<LI><A HREF="000487.html">[99s-extend] websocket over ssl +</A><A NAME="487"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01420898158.484-01420899664.485-01420900132.486-01420900481.487-01420903699.490- --> +<LI><A HREF="000490.html">[99s-extend] websocket over ssl +</A><A NAME="490"> </A> +<I>e at bestmx.net +</I> + +</UL> +</UL> +<!--1 01420898158.484-01420900781.488- --> +<LI><A HREF="000488.html">[99s-extend] websocket over ssl +</A><A NAME="488"> </A> +<I>Lee Sylvester +</I> + +<UL> +<!--2 01420898158.484-01420900781.488-01420901183.489- --> +<LI><A HREF="000489.html">[99s-extend] websocket over ssl +</A><A NAME="489"> </A> +<I>e at bestmx.net +</I> + +</UL> +</UL> +<!--0 01421253941.491- --> +<LI><A HREF="000491.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="491"> </A> +<I>Stefan Strigler +</I> + +<UL> +<!--1 01421253941.491-01421257779.492- --> +<LI><A HREF="000492.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="492"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--2 01421253941.491-01421257779.492-01421257821.493- --> +<LI><A HREF="000493.html">[99s-extend] cowboy and handling exceptions +</A><A NAME="493"> </A> +<I>Loïc Hoguin +</I> + +</UL> +</UL> +<!--0 01421695920.494- --> +<LI><A HREF="000494.html">[99s-extend] Cowboy + SSL +</A><A NAME="494"> </A> +<I>e at bestmx.net +</I> + +<UL> +<!--1 01421695920.494-01421864920.495- --> +<LI><A HREF="000495.html">[99s-extend] Cowboy + SSL +</A><A NAME="495"> </A> +<I>e at bestmx.net +</I> + +<UL> +<!--2 01421695920.494-01421864920.495-01422268174.499- --> +<LI><A HREF="000499.html">[99s-extend] Cowboy + SSL +</A><A NAME="499"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--3 01421695920.494-01421864920.495-01422268174.499-01422282656.500- --> +<LI><A HREF="000500.html">[99s-extend] Cowboy + SSL +</A><A NAME="500"> </A> +<I>e at bestmx.net +</I> + +</UL> +</UL> +</UL> +<!--0 01422225008.496- --> +<LI><A HREF="000496.html">[99s-extend] Rewriting URLs +</A><A NAME="496"> </A> +<I>Paul Dickson +</I> + +<UL> +<!--1 01422225008.496-01422248989.497- --> +<LI><A HREF="000497.html">[99s-extend] Rewriting URLs +</A><A NAME="497"> </A> +<I>Paul Dickson +</I> + +<UL> +<!--2 01422225008.496-01422248989.497-01422268002.498- --> +<LI><A HREF="000498.html">[99s-extend] Rewriting URLs +</A><A NAME="498"> </A> +<I>Loïc Hoguin +</I> + +<UL> +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501- --> +<LI><A HREF="000501.html">[99s-extend] Rewriting URLs +</A><A NAME="501"> </A> +<I>Paul Dickson +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502- --> +<LI><A HREF="000502.html">[99s-extend] Rewriting URLs +</A><A NAME="502"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503- --> +<LI><A HREF="000503.html">[99s-extend] Rewriting URLs +</A><A NAME="503"> </A> +<I>Paul Dickson +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504- --> +<LI><A HREF="000504.html">[99s-extend] Rewriting URLs +</A><A NAME="504"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504-01422365070.505- --> +<LI><A HREF="000505.html">[99s-extend] Rewriting URLs +</A><A NAME="505"> </A> +<I>Paul Dickson +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504-01422365070.505-01422365360.506- --> +<LI><A HREF="000506.html">[99s-extend] Rewriting URLs +</A><A NAME="506"> </A> +<I>Loïc Hoguin +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504-01422365070.505-01422365360.506-01422366254.507- --> +<LI><A HREF="000507.html">[99s-extend] Rewriting URLs +</A><A NAME="507"> </A> +<I>Paul Dickson +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504-01422365070.505-01422365360.506-01422366254.507-01422570215.508- --> +<LI><A HREF="000508.html">[99s-extend] Rewriting URLs +</A><A NAME="508"> </A> +<I>Paul Dickson +</I> + +<!--3 01422225008.496-01422248989.497-01422268002.498-01422309249.501-01422353621.502-01422364068.503-01422364258.504-01422365070.505-01422365360.506-01422366254.507-01422570215.508-01422570299.509- --> +<LI><A HREF="000509.html">[99s-extend] Rewriting URLs +</A><A NAME="509"> </A> +<I>Loïc Hoguin +</I> + +</UL> +</UL> +</UL> + </ul> + <p> + <a name="end"><b>Last message date:</b></a> + <i>Thu Jan 29 23:24:59 CET 2015</i><br> + <b>Archived on:</b> <i>Thu Jan 29 23:24:56 CET 2015</i> + <p> + <ul> + <li> <b>Messages sorted by:</b> + + <a href="subject.html#start">[ subject ]</a> + <a href="author.html#start">[ author ]</a> + <a href="date.html#start">[ date ]</a> + <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list... + </a></b></li> + </ul> + <p> + <hr> + <i>This archive was generated by + Pipermail 0.09 (Mailman edition).</i> + </BODY> +</HTML> + |