Using nginx file upload module

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Using nginx file upload module

DiegoLont
Hi Johan, hi Nick,

Stephan and I made an implementation based on Nick's work on the upload component. It works currently under 2.8, and there are still some small issues, but basically it works as follows:
        - There is a component, you simply put on the place you want the upload.
        - It calls uses nginx for the upload.
        - For the callback there is component, that is registered under "upload" and has implemented the initialRequest that ensures the callback is called.

The work that still needs to be done:
        - The callback is registered on the class side of the component. It is released when the component is called again and the session is expired. This does not work yet on 3.0.
        - Nick made an progress indicator, this does not work yet and the code is still included and some points
        - Nick made all java script in jquery, we made it plain javascript, since we have not upgraded our library yet. But this should be in jquery again.

I will do some work on it monday, and will try to upgrade it to 3.0. Than I will include it on the mailinglist. I already mailed the current state to Johan, but it was made during our stay at SPA (London), and I did not had tested the package I made. Also the configuration was mailed seperatedly. So Johan, I like to hear wether it worked on your side. You can Skype Stephan tomorrow and me on Monday if you want some assistance.

grtz. Diego_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Using nginx file upload module

Johan Brichau-2
Hi Diego,

We have it working.
But without any special registered upload application that handles the callback. The callbacks get called just like they always did before when serializing a form. Are you sure you need a component to be registered under /upload? (see below and my previous email). We also do it without javascript, but that's probably only because we do not use the progress indicator module.

As I said in my previous email, what went wrong in our config is that we made the upload go to a location called '/upload' instead of merely adding 'upload' at the end of the action url that is created by seaside. This works perfectly because seaside will just disregard that part of the url path that comes after the application name. In Nick's config, it's not necessary to add it at the end of the path because he has the app registered at the '/' location.

Thanks to the three of you for sending me code and nginx configs. It definitely set us on the right track.
Johan

On 16 Jun 2011, at 21:26, Diego Lont wrote:

> Hi Johan, hi Nick,
>
> Stephan and I made an implementation based on Nick's work on the upload component. It works currently under 2.8, and there are still some small issues, but basically it works as follows:
> - There is a component, you simply put on the place you want the upload.
> - It calls uses nginx for the upload.
> - For the callback there is component, that is registered under "upload" and has implemented the initialRequest that ensures the callback is called.
>
> The work that still needs to be done:
> - The callback is registered on the class side of the component. It is released when the component is called again and the session is expired. This does not work yet on 3.0.
> - Nick made an progress indicator, this does not work yet and the code is still included and some points
> - Nick made all java script in jquery, we made it plain javascript, since we have not upgraded our library yet. But this should be in jquery again.
>
> I will do some work on it monday, and will try to upgrade it to 3.0. Than I will include it on the mailinglist. I already mailed the current state to Johan, but it was made during our stay at SPA (London), and I did not had tested the package I made. Also the configuration was mailed seperatedly. So Johan, I like to hear wether it worked on your side. You can Skype Stephan tomorrow and me on Monday if you want some assistance.
>
> grtz. Diego_______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Using nginx file upload module

Nick
Hi,

Somewhat belatedly I've finally got round to documenting and extracting the Nginx file upload and progress component and configuration I use:


Feedback always appreciated. If you experiment with the embedded upload components (an interactive blog!) , be gentle I'm running on a free EC2 micro-instance: http://aws.amazon.com/ec2/#instance

Nick 

On 16 June 2011 20:47, Johan Brichau <[hidden email]> wrote:
Hi Diego,

We have it working.
But without any special registered upload application that handles the callback. The callbacks get called just like they always did before when serializing a form. Are you sure you need a component to be registered under /upload? (see below and my previous email). We also do it without javascript, but that's probably only because we do not use the progress indicator module.

As I said in my previous email, what went wrong in our config is that we made the upload go to a location called '/upload' instead of merely adding 'upload' at the end of the action url that is created by seaside. This works perfectly because seaside will just disregard that part of the url path that comes after the application name. In Nick's config, it's not necessary to add it at the end of the path because he has the app registered at the '/' location.

Thanks to the three of you for sending me code and nginx configs. It definitely set us on the right track.
Johan

On 16 Jun 2011, at 21:26, Diego Lont wrote:

> Hi Johan, hi Nick,
>
> Stephan and I made an implementation based on Nick's work on the upload component. It works currently under 2.8, and there are still some small issues, but basically it works as follows:
>       - There is a component, you simply put on the place you want the upload.
>       - It calls uses nginx for the upload.
>       - For the callback there is component, that is registered under "upload" and has implemented the initialRequest that ensures the callback is called.
>
> The work that still needs to be done:
>       - The callback is registered on the class side of the component. It is released when the component is called again and the session is expired. This does not work yet on 3.0.
>       - Nick made an progress indicator, this does not work yet and the code is still included and some points
>       - Nick made all java script in jquery, we made it plain javascript, since we have not upgraded our library yet. But this should be in jquery again.
>
> I will do some work on it monday, and will try to upgrade it to 3.0. Than I will include it on the mailinglist. I already mailed the current state to Johan, but it was made during our stay at SPA (London), and I did not had tested the package I made. Also the configuration was mailed seperatedly. So Johan, I like to hear wether it worked on your side. You can Skype Stephan tomorrow and me on Monday if you want some assistance.
>
> grtz. Diego_______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside


_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Using nginx file upload module

Julian Fitzell-2
Great post Nick!

(minor niggle: you refer to step 3 as the "final step" in the first paragraph of that page)

On Fri, Jul 1, 2011 at 2:18 PM, Nick Ager <[hidden email]> wrote:
Hi,

Somewhat belatedly I've finally got round to documenting and extracting the Nginx file upload and progress component and configuration I use:


Feedback always appreciated. If you experiment with the embedded upload components (an interactive blog!) , be gentle I'm running on a free EC2 micro-instance: http://aws.amazon.com/ec2/#instance

Nick 

On 16 June 2011 20:47, Johan Brichau <[hidden email]> wrote:
Hi Diego,

We have it working.
But without any special registered upload application that handles the callback. The callbacks get called just like they always did before when serializing a form. Are you sure you need a component to be registered under /upload? (see below and my previous email). We also do it without javascript, but that's probably only because we do not use the progress indicator module.

As I said in my previous email, what went wrong in our config is that we made the upload go to a location called '/upload' instead of merely adding 'upload' at the end of the action url that is created by seaside. This works perfectly because seaside will just disregard that part of the url path that comes after the application name. In Nick's config, it's not necessary to add it at the end of the path because he has the app registered at the '/' location.

Thanks to the three of you for sending me code and nginx configs. It definitely set us on the right track.
Johan

On 16 Jun 2011, at 21:26, Diego Lont wrote:

> Hi Johan, hi Nick,
>
> Stephan and I made an implementation based on Nick's work on the upload component. It works currently under 2.8, and there are still some small issues, but basically it works as follows:
>       - There is a component, you simply put on the place you want the upload.
>       - It calls uses nginx for the upload.
>       - For the callback there is component, that is registered under "upload" and has implemented the initialRequest that ensures the callback is called.
>
> The work that still needs to be done:
>       - The callback is registered on the class side of the component. It is released when the component is called again and the session is expired. This does not work yet on 3.0.
>       - Nick made an progress indicator, this does not work yet and the code is still included and some points
>       - Nick made all java script in jquery, we made it plain javascript, since we have not upgraded our library yet. But this should be in jquery again.
>
> I will do some work on it monday, and will try to upgrade it to 3.0. Than I will include it on the mailinglist. I already mailed the current state to Johan, but it was made during our stay at SPA (London), and I did not had tested the package I made. Also the configuration was mailed seperatedly. So Johan, I like to hear wether it worked on your side. You can Skype Stephan tomorrow and me on Monday if you want some assistance.
>
> grtz. Diego_______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside


_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside



_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Using nginx file upload module

Nick
Hi,

I've updated the nginx file-upload code - removing the need for an ajax round-trip after each upload. I've also revisited the API, making it a little more consistent with other Seaside component APIs.

As ever you try out the component in the (interactive) blog post: http://nickager.com/blog/file-upload-using-Nginx-and-Seaside which describes the component.


Apologies if you tried the component before and hit problems - a last-minute "improvement" slipped through which broke rendering after uploading!

Feedback always appreciated,

Nick


On 1 July 2011 15:17, Julian Fitzell <[hidden email]> wrote:
Great post Nick!

(minor niggle: you refer to step 3 as the "final step" in the first paragraph of that page)


On Fri, Jul 1, 2011 at 2:18 PM, Nick Ager <[hidden email]> wrote:
Hi,

Somewhat belatedly I've finally got round to documenting and extracting the Nginx file upload and progress component and configuration I use:


Feedback always appreciated. If you experiment with the embedded upload components (an interactive blog!) , be gentle I'm running on a free EC2 micro-instance: http://aws.amazon.com/ec2/#instance

Nick 

On 16 June 2011 20:47, Johan Brichau <[hidden email]> wrote:
Hi Diego,

We have it working.
But without any special registered upload application that handles the callback. The callbacks get called just like they always did before when serializing a form. Are you sure you need a component to be registered under /upload? (see below and my previous email). We also do it without javascript, but that's probably only because we do not use the progress indicator module.

As I said in my previous email, what went wrong in our config is that we made the upload go to a location called '/upload' instead of merely adding 'upload' at the end of the action url that is created by seaside. This works perfectly because seaside will just disregard that part of the url path that comes after the application name. In Nick's config, it's not necessary to add it at the end of the path because he has the app registered at the '/' location.

Thanks to the three of you for sending me code and nginx configs. It definitely set us on the right track.
Johan

On 16 Jun 2011, at 21:26, Diego Lont wrote:

> Hi Johan, hi Nick,
>
> Stephan and I made an implementation based on Nick's work on the upload component. It works currently under 2.8, and there are still some small issues, but basically it works as follows:
>       - There is a component, you simply put on the place you want the upload.
>       - It calls uses nginx for the upload.
>       - For the callback there is component, that is registered under "upload" and has implemented the initialRequest that ensures the callback is called.
>
> The work that still needs to be done:
>       - The callback is registered on the class side of the component. It is released when the component is called again and the session is expired. This does not work yet on 3.0.
>       - Nick made an progress indicator, this does not work yet and the code is still included and some points
>       - Nick made all java script in jquery, we made it plain javascript, since we have not upgraded our library yet. But this should be in jquery again.
>
> I will do some work on it monday, and will try to upgrade it to 3.0. Than I will include it on the mailinglist. I already mailed the current state to Johan, but it was made during our stay at SPA (London), and I did not had tested the package I made. Also the configuration was mailed seperatedly. So Johan, I like to hear wether it worked on your side. You can Skype Stephan tomorrow and me on Monday if you want some assistance.
>
> grtz. Diego_______________________________________________
> seaside mailing list
> [hidden email]
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside


_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside



_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside



_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside