Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 01 Feb 2008 12:51:01 +1100
From:      Lawrence Stewart <lstewart@freebsd.org>
To:        "Chris H." <chris#@1command.com>
Cc:        freebsd-apache@freebsd.org, freebsd-stable@freebsd.org, freebsd-ports@freebsd.org
Subject:   Re: [: -le: argument expected
Message-ID:  <47A27B05.9060103@freebsd.org>
In-Reply-To: <20080131171339.8rrcn0yvescokgw8@webmail.1command.com>
References:  <20080131094547.54c6rsq8wgggw48s@webmail.1command.com>	<47A26C76.9070306@freebsd.org> <20080131171339.8rrcn0yvescokgw8@webmail.1command.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi Chris,

Chris H. wrote:
> Hello, and thank you for your reply.
> 
> Quoting Lawrence Stewart <lstewart@freebsd.org>:
> 
>>
>> Hi Chris,
>>
>> Firstly, a disclaimer: I'm not an expert so I might be behind the 
>> times on what I'm about to tell you...
> 
> Note taken. :)
> 
>>
>> Chris H. wrote:
>> > Hello all,
>> > System:
>> > FreeBSD 7.0-PRERELEASE i386 Wed Jan 16 18:39:53 PST 2008
>> >
>> > Context:
>> > After several failed attempts to get a /stable/ installation of
>> > Apache13-ssl
>> > and friends built and installed from source (see thread:
>> > /usr/bin/objformat, for
>> > more background). I chose to look at the possibility of using Apache
>> > 2.0. I was
>> > reluctant, as doing so would require migrating ~50 carefully crafted
>> > conf files
>> > which have evolved over many yrs. to be now seemingly impervious to
>> > abuse, or
>> > attack. I hadn't intended this server to become a guinea pig, but my 
>> ill
>> > fated
>> > attempts to install a stable copy of www/apache13-ssl from source
>> > necessitated
>> > increasing the resources on the other servers. So as to experiment on
>> > this one.
>> >
>> > To the point!
>> > Building Apache 2.0 on this box requied cvsupping src/ports 
>> (2008-01-30).
>> > As the version of Apache 2.0 was 2.0.61 (has 2 security related 
>> issues).
>> > Current version:
>> > 2.0.63. Building/installing this version went w/o trouble. Ran as 
>> expected.
>> > I only made 1 mod from the default config/build: WITH_MPM?= threadpool.
>> > The original was: WITH_MPM?= prefork. My diong so also required: 
>> KQUEUE.
>> > Other than that, all was as-was.
>> >
>>
>> [snip]
>>
>> Regardless of the errors you reported, I believe changing the MPM is a 
>> problem. Last time I tried Apache with the threaded worker MPM it 
>> worked flawlessly. However PHP has issues because it isn't thread 
>> safe. The only safe way to run the 2 together was to set the Apache 
>> MPM back to the default (prefork).
> 
> While I appreciate your insight regarding php5 not being "thread safe".
> I would argue that I am not seeing php5 using anthing regarding my
> Apache 2.0 build, except to ask whether it is 1.3 || 2. So, while
> you may be /absolutely/ correct about php5 not running well/at all
> with a threaded Apache. I'm still stumped as to why php5 refuses to
> build, and emits what appears to be errors in the php5 configure/make
> files. Point being; if I can get php5 to build/install. I might be able
> to make it "play nice" with a threaded Apache; and that would make
> /everyone/ happy. :)

It does smell of a problem related with another port... Perhaps you just 
need to do some portupgrading? That said, with problems like this, I 
just reckon that it's best to start simple i.e. setup apache in the 
known good way (prefork mpm) and then get php working. Once you're 
convinced that all plays nice, then upgrade apache to use worker MPM and 
see what breaks (if anything). You're more likely to get useful help 
from people if you only change one variable at a time as it were.

> 
>> Taking my disclaimer into account, I possibly just didn't figure out 
>> how to make the 2 play nice, so I'd welcome info/pointers from others 
>> who have managed to get threaded apache and PHP working together.
>>
>> Assuming no one pipes up and explains how to work around the PHP 
>> threading issues, I'd recommend rebuilding apache with the default MPM 
>> (shouldn't require any make variables defined). Verify it works ok 
>> once installed and then try get PHP working again.
> 
> I may try that. But I'm at a loss as to what that has to do with
> getting php5 to build. As (mentioned earlier) I am unable to find
> where php5 does anything more that to ask if I'm using Apache 1.3 || 2.

As am I. But the cvsup of the ports tree has possibly required php to 
use a new dependency on a newer version of autoconf or some other pkg. 
Installing the ports-mgmt/portupgrade port and running "portupgrade -Rrf 
php5" will take all the hard work out of ensuring all your packages 
required by PHP are up to date.

> 
>>
>> I would also echo the recommendation of others to jump straight to 
>> Apache 2.2(.8) if you're going to make a disruptive switch now 
>> anyways. I have a personal step-by-step build guide for getting Apache 
>> 2.2 and PHP5 working together if you're interested.
> 
> Not going to happen - in the near future anyway. It's not unlike asking
> an Athiest to become a Jew. While it may be possible for one to make
> the change. It's a quantum leap. I've recently elaborated on this already.
> So I'll not repeat myself here. :)
> 


The other messages in the thread hadn't arrived at my mail client before 
I said this... sorry for flogging the dead horse a little more (but I 
guess I suspected the effort to go from 1.3->2.0 is effectively 
identical to 1.3->2.2, but that is a guess).

Cheers,
Lawrence



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47A27B05.9060103>