M. David Peterson | 1 Mar 2009 14:24

Issue with FastCGI handler and mapping directories (was Re: Cherokee 0.99.1 released)

On Thu, Feb 26, 2009 at 11:49 AM, Alvaro Lopez Ortega <alvaro <at> octality.com> wrote:

                  =========================
                  Cherokee 0.99.1 released!
                  =========================

Congratulations!  However, one issue that I keep running into and still seems to be a problem with this release has to do with the FastCGI module appending the directory name for a given behavior to the URI passed to the FastCGI process. I'll leave the example URI that follows up and running for a few hours to allow time to see the problem I'm referring to:

http://dev.amp.fm/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=next_7_days&format=atom

I've tried using "service" rather than "/service" (minus the quotes) for the behavior target, but then the behavior is passed up and falls through to the Default behavior which is also mapped to a FastCGI information source which works w/o issue. I'm assuming this is because the Default behavior doesn't append a directory name to the root directory of the virtual domain, and therefore the directory mapping function with the "double vision" issue is never invoked. But that's obviously just a guess.  Is this, in fact, a bug in Cherokee, or am I doing something wrong with the way I'm implementing the behavior?

I'm also still having issues with the Audio/Video streaming handler, but will bring this up in a seperate post.

Thanks for all of your efforts in building such a kick a$$ server!  Beyond just a handful of issues, Cherokee is most definitely proving itself to be the best performing web server available at /any/ price.  Keep up the great work!

--
/M:D

M. David Peterson
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: m.david <at> 3rdandUrban.com | m.david <at> amp.fm
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm | http://www.oreillynet.com/pub/au/2354 | http://broadcast.oreilly.com/m-david-peterson/
_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
M. David Peterson | 1 Mar 2009 14:39

Re: Streaming Module Issue: /usr/lib64/cherokee/libplugin_streaming.so: undefined symbol: cosh

On Mon, Feb 23, 2009 at 6:06 AM, M. David Peterson <m.david <at> mdptws.com> wrote:

In learning of the streaming module now present in SVN, I quickly got it compiled and up and running against ffmpeg, but am running into the issue mentioned in the subject line.

Extended error message:

plugin_loader.c:194: ERROR: dlopen(/usr/lib64/cherokee/libplugin_streaming.so): /usr/lib64/cherokee/libplugin_streaming.so: undefined symbol: cosh
plugin_loader.c:363: ERROR: Can't open "streaming" module
Couldn't read the config file: /etc/cherokee/cherokee.conf

Any ideas what's up?

This issue is still present in both the 0.99.0 and 0.99.1 releases. It makes itself known on both x86 and x86_64. Is anyone else seeing the same issue? It would be one thing if this was an issue with a non-standard library contained in a non-standard lib path, but being unable to locate symbols located in libm seems a bit strange, and nothing I do to aid in the process of locating and linking against libm seems to help.

Any ideas?

One thing worth pointing out: Prior to the release of 0.99.0, attempting to specify the location of the ffmpeg libraries via the configure script had no effect on where the build process would look for the ffmpeg libraries which was always in /usr/local/lib.  I haven't looked at the code (will do that now) but could this be something as simple as a hard coded reference to a non-standard location of the math library?

--
/M:D

M. David Peterson
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: m.david <at> 3rdandUrban.com | m.david <at> amp.fm
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm | http://www.oreillynet.com/pub/au/2354 | http://broadcast.oreilly.com/m-david-peterson/
_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
M. David Peterson | 1 Mar 2009 16:36

Re: Issue with FastCGI handler and mapping directories (was Re: Cherokee 0.99.1 released)

On Sun, Mar 1, 2009 at 6:24 AM, M. David Peterson <m.david <at> mdptws.com> wrote:


I'll leave the example URI that follows up and running for a few hours to allow time to see the problem I'm referring to:

http://dev.amp.fm/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=next_7_days&format=atom

I had to move things back to using the Default behavior (the behavior that doesn't showcase this issue), but in summary what happens is that the above URI request get's mapped by Cherokee to:

http://dev.amp.fm/service/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=next_7_days&format=atom

... and passed to the FastCGI process thus returning a URI not found error.

--
/M:D

M. David Peterson
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: m.david <at> 3rdandUrban.com | m.david <at> amp.fm
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm | http://www.oreillynet.com/pub/au/2354 | http://broadcast.oreilly.com/m-david-peterson/
_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
Alvaro Lopez Ortega | 1 Mar 2009 18:13
Favicon
Gravatar

Re: Streaming Module Issue: /usr/lib64/cherokee/libplugin_streaming.so: undefined symbol: cosh

On 01-mar-09, at 14:39, M. David Peterson wrote:

> Any ideas?
>
> One thing worth pointing out: Prior to the release of 0.99.0,  
> attempting to specify the location of the ffmpeg libraries via the  
> configure script had no effect on where the build process would look  
> for the ffmpeg libraries which was always in /usr/local/lib.  I  
> haven't looked at the code (will do that now) but could this be  
> something as simple as a hard coded reference to a non-standard  
> location of the math library?

FFMpeg has been only used since 0.99.0, so it's the most likely source  
of this issue.  If cosh() is the problem, I'd try to add -lm to  
FFMPEG_LIBS.

--
Octality
http://www.octality.com/
Alvaro Lopez Ortega | 1 Mar 2009 19:27
Picon
Gravatar

Re: Issue with FastCGI handler and mapping directories (was Re: Cherokee 0.99.1 released)

On 01-mar-09, at 14:24, M. David Peterson wrote:

> sue that I keep running into and still seems to be a problem with  
> this release has to do with the FastCGI module appending the  
> directory name for a given behavior to the URI passed to the FastCGI  
> process. I'll leave the example URI that follows up and running for  
> a few hours to allow time to see the problem I'm referring to:
>
> http://dev.amp.fm/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=next_7_days&format=atom

The value of the FastCGI variables depend on how the server is  
configured. For instance, it depends on where the FastCGI handler is  
being configured (a directory, and extension, etc).

There is something quite important at this regard. There are two sort  
of FastCGI/SCI setups, and you must point Cherokee which one it will  
handle:

- Using real files: The most common case is PHP. Cherokee has to check  
if the file exists, and in case it does, build the variables according  
to its path.

- Passing all the requests to the application server: In this case,  
Cherokee does not need to check whether the request matches a file on  
the disk. Thus, the algorithm for building the variables is slightly  
different.

The "Check File" checkbox (in the FastCGI configuration) points  
Cherokee the type of setup. If there is something wrong with the paths  
passed to the FastCGI, it might be because of this. Could you please  
check whether the option is set correctly?

--
Greetings, alo
http://www.alobbs.com/
M. David Peterson | 1 Mar 2009 19:44

Re: Issue with FastCGI handler and mapping directories (was Re: Cherokee 0.99.1 released)

On Sun, Mar 1, 2009 at 11:27 AM, Alvaro Lopez Ortega <alvaro <at> gnu.org> wrote:
 
The "Check File" checkbox (in the FastCGI configuration) points Cherokee the type of setup. If there is something wrong with the paths passed to the FastCGI, it might be because of this. Could you please check whether the option is set correctly?

So I've removed the check from the Check File checkbox and it now attempts to 301 redirect the request to /service. e.g. http://dev.amp.fm/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=next_7_days&format=atom

... returns:

$ curl -i "http://dev.amp.fm/service/search/return-events-by-location/?location=salt+lake+city&topic=%7C&time_scope=today&format=atom"
HTTP/1.1 301 Moved Permanently
Connection: Keep-Alive
Keep-Alive: timeout=20
Date: Sun, 01 Mar 2009 18:35:20 GMT
Server: Cherokee/0.99.1 (UNIX)
Location: http://dev.amp.fm/service/
Connection: close
Date: Sun, 01 Mar 2009 18:35:20 GMT
Content-Type: text/html; charset=us-ascii
Content-Length: 259

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved to <a href='http://dev.amp.fm/service/'>http://dev.amp.fm/service/</a>.</p>
</body></html>

This is using the Directory rule type. 
 
--
/M:D

M. David Peterson
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: m.david <at> 3rdandUrban.com | m.david <at> amp.fm
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm | http://www.oreillynet.com/pub/au/2354 | http://broadcast.oreilly.com/m-david-peterson/
_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
M. David Peterson | 1 Mar 2009 19:48

Re: Streaming Module Issue: /usr/lib64/cherokee/libplugin_streaming.so: undefined symbol: cosh

On Sun, Mar 1, 2009 at 10:13 AM, Alvaro Lopez Ortega <alvaro <at> octality.com> wrote:

FFMpeg has been only used since 0.99.0, so it's the most likely source of this issue.  If cosh() is the problem, I'd try to add -lm to FFMPEG_LIBS.

Okay. Will try that now...

--
/M:D

M. David Peterson
Co-Founder & Chief Architect, 3rd&Urban, LLC
Email: m.david <at> 3rdandUrban.com | m.david <at> amp.fm
Mobile: (206) 999-0588
http://3rdandUrban.com | http://amp.fm | http://www.oreillynet.com/pub/au/2354 | http://broadcast.oreilly.com/m-david-peterson/
_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
Alvaro Lopez Ortega | 2 Mar 2009 12:52
Favicon
Gravatar

Cherokee 0.99.2 released

                  =========================
                  Cherokee 0.99.2 released!
                  =========================

Cherokee is a very fast, flexible and easy to configure Web Server.
It supports the widespread technologies nowadays: FastCGI, SCGI, PHP,
CGI, TLS and SSL encrypted connections, Virtual hosts, Authentication,
on the fly encoding, Apache compatible log files, HTTP Load Balancing,
Data Base Balancing, SSI, Reverse HTTP Proxy, Bandwidth Shaping and
much more.

Cherokee also provides an easy to use configuration interface that
allows to configure the server from top to bottom without having to
edit a text configuration file.

Please visit the Cherokee Web Server site for more information:

          http://www.cherokee-project.com/

Availability
------------
- Main site:
  http://www.cherokee-project.com/download/0.99/0.99.2/cherokee-0.99.2.tar.gz
  MD5 (cherokee-0.99.2.tar.gz) = 8b1930985e1c9ccf3dd6be0fd46c78af

- Mirrors:
  Belgium         - ftp://ftp.easynet.be/cherokee/
  Ireland         - http://ftp.heanet.ie/mirrors/cherokee/
  Japan           - http://www.ring.gr.jp/archives/net/cherokee/
                    http://www.ftp.ne.jp/infosystems/cherokee/
  The Netherlands - http://ftp.nluug.nl/pub/internet/cherokee/
  South Africa    - http://ftp.saix.net/Cherokee/
                    http://mirror.is.co.za/mirrors/cherokee/
  Spain           - http://sunsite.rediris.es/mirror/cherokee/
  US              - http://cherokee.osuosl.org/
                    ftp://mirrors.secution.com/cherokee

Changes
-------
This is a bug fixing release of the stable branch.
The following bugs were fixed:

  - Safer spawn of interpreters
  - Maximum Post size limit implemented
  - Added a new rule type to bind incoming ports
  - admin: Better TLS/SSL management
  - admin: Fixed start up on slow boxes

Proud Cherokee users
--------------------
We would love to know that you are using Cherokee. Submit your domain
name and it will be listed on the Cherokee Project web site:

   http://www.cherokee-project.com/cherokee-domain-list.html

Mailing lists
-------------
You can find a list of our available mailing at:

   http://lists.cherokee-project.com/

Feedback
--------
Bugs and Requests for features can be submitted too. We will be happy
to take care of them. Your feedback is very valuable to us!

   http://bugs.cherokee-project.com/

Acknowledges
------------
A whole lot of people have contributed with the project during the last
years; without their help Cherokee could not be possible. Many thanks
to everybody who has contributed.

Special acknowledges to our main contributors for this release:

- Antonio Perez
- Samuel Cormier-Iijima
- Stefan de Konink

ROCK ON!!

--
Octality
http://www.octality.com/
Superman Jason | 3 Mar 2009 02:42
Picon

Directory Aliases - to directories with php or likewise.

Hi All,

 

Been wanting to try this cool server out in production but I’m hitting a few snags. Got a lot of them figured out, but this one I haven’t yet. I’ve noticed a few threads that touched on this subject, but none that really answered it in a way that I could figure out how to implement.

 

I’m using it on FreeBSD 7.1, with the latest 0.99.2 cherokee installed via a locally hacked ports tree.

 

Now for an example. I have Drupal 6.10 installed via ports. The nice thing with that is it’s easy to keep up to date, when I update my ports it just gets updated!

 

The port installs the package to /usr/local/www/drupal6, which is easily added to apache with this following Alias

 

Alias /drupal "/usr/local/www/drupal6"

<Directory "/usr/local/www/drupal6">

Options FollowSymlinks

AllowOverride All

Order allow,deny

Allow from all

</Directory>

 

The great thing with this feature is it is easy to point an alias at a directory anywhere and control the features for it separately.

 

I see that it’s easy to add a regular directory to Cherokee, but how would one go about adding one that points to a directory like drupal that is mostly php script?

 

Thank in advance for your insights!

 

Jason

_______________________________________________
Cherokee mailing list
Cherokee <at> lists.octality.com
http://lists.octality.com/listinfo/cherokee
Alvaro Lopez Ortega | 3 Mar 2009 09:28
Picon
Gravatar

Re: Directory Aliases - to directories with php or likewise.

On 03-mar-09, at 02:42, Superman Jason wrote:

> The great thing with this feature is it is easy to point an alias at  
> a directory anywhere and control the features for it separately.

I'm afraid this sort of delegation is not supported yet.

>  I see that it’s easy to add a regular directory to Cherokee, but  
> how would one go about adding one that points to a directory like  
> drupal that is mostly php script?

The behavior of a virtual server is based on a list of rules. Those  
rules will be evaluated from highest to lowest priority (top to down  
in the Behavior list). As you can see, the "Extension PHP" rule is on  
top of the list. Thus, it will match all the .php requests  
independently of where the files are located.

In the case of Drupal, it'd be almost the same. The only thing you'd  
have to do is to add a new rules *before* the "Extension PHP" one.  
It'd only have to specify the Document Root (/usr/local/www/drupal6).  
It is very important to ensure that this new rule is *not* marked as  
Final, so once the Document Root has been set, the evaluation  
continues until it reaches the "Extension PHP" rule.

The concept is simple, although I wonder whether I've managed to  
explain it.

--
Greetings, alo
http://www.alobbs.com/

Gmane