Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 190966 - www-servers/apache-2.0.59-r5 chews htpasswd and friends on stable
Summary: www-servers/apache-2.0.59-r5 chews htpasswd and friends on stable
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Apache Team - Bugzilla Reports
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-01 12:54 UTC by Giampaolo Tomassoni
Modified: 2007-09-04 14:26 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Giampaolo Tomassoni 2007-09-01 12:54:54 UTC
On a stable system, the recent update to www-servers/apache-2.0.59-r5 doesn't install some of the most common apache tools:

/usr/sbin/ab2
/usr/sbin/apache2ctl
/usr/sbin/checkgid2
/usr/sbin/dbmmanage2
/usr/sbin/htdbm
/usr/sbin/htdigest2
/usr/sbin/htpasswd2
/usr/sbin/httxt2dbm
/usr/sbin/logresolve2
/usr/sbin/rotatelogs2

Also, they can't be installed by emerging app-admin/apache-tools-2.2.4-r4 since, of course, this would need www-servers/apache-2.2.4, which is masked and unstable.

Reproducible: Always

Steps to Reproduce:
1.emerge -uDvN world
2.
3.
Comment 1 lou 2007-09-01 14:06:35 UTC
I'm having the same problem. 

The problem might be happening here. Maybe they're not being compiled and failing on the move.. not sure:
# SLOT=2
    cd ${D}
    for i in htdigest htpasswd logresolve apxs ab rotatelogs dbmmanage checkgid split-logfile; do
        mv -v usr/sbin/${i} usr/sbin/${i}2
    done
    mv -v usr/sbin/apachectl usr/sbin/apache2ctl
    mv -v usr/sbin/list_hooks.pl usr/sbin/list_hooks2.pl
    mv -v usr/sbin/logresolve.pl usr/sbin/logresolve2.pl


Comment 2 Giampaolo Tomassoni 2007-09-01 14:44:23 UTC
(In reply to comment #1)
> I'm having the same problem. 
> The problem might be happening here. Maybe they're not being compiled and
> failing on the move.. not sure:

It seems to me they are not even built.

The PROGRAMS var in Makefile.in in the support dir only lists apxs. Maybe a problem with autoconf/autoheader/autosomething? Maybe an upstream problem?

Anyway, I wonder why it got stable: nobody saw that even apache2ctl was missing after emerge?
Comment 3 Jesse Adelman 2007-09-01 20:03:50 UTC
"Me too", across multiple systems. Looks like the ebuild needs some TLC.
Comment 4 Benedikt Böhm (RETIRED) gentoo-dev 2007-09-02 07:57:38 UTC
apache-tools does not block anymore, and 2.0.59-r5 contains the necesarry PDEPEND. thanks and sorry for the noise.
Comment 5 lou 2007-09-02 13:55:38 UTC
apache-tools-2.2.4-r2 give me logresolve2, htpasswd2, etc. but apache2ctl is still missing. 

[ebuild   R   ] www-servers/apache-2.0.59-r5  USE="apache2 mpm-prefork ssl -debug -doc -ldap -mpm-itk -mpm-leader -mpm-peruser -mpm-threadpool -mpm-worker (-selinux) -static-modules -threads" 0 kB
[ebuild   R   ] app-admin/apache-tools-2.2.4-r4  USE="ssl" 0 kB

comp / # which logresolve2
/usr/sbin/logresolve2
comp / # which apache2clt
which: no apache2clt in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/i686-pc-linux-gnu/gcc-bin/4.1.1)
comp / # which apachectl
which: no apachectl in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/4.1.2:/usr/i686-pc-linux-gnu/gcc-bin/4.1.1)
Comment 6 Giampaolo Tomassoni 2007-09-02 14:05:25 UTC
Confirmed.
Comment 7 Benedikt Böhm (RETIRED) gentoo-dev 2007-09-02 14:47:44 UTC
the proposed PDEPEND did not do very well, it is designed for 2.2 branch actually. i removed the backported patch from 2.0.59-r5, please remerge.
Comment 8 Bart Van Loon 2007-09-02 21:45:56 UTC
mind file collisions please. I believe www-servers/apache-2.0.59-r5 and app-admin/apache-tools-2.2.4-r4 both provide /usr/sbin/ab2-ssl, /usr/sbin/log_server_status and /usr/sbin/split-logfile2. (last rsync was Sun Sep  2 02:00:13 2007 (GMT+1))
Comment 9 Bart Van Loon 2007-09-02 21:55:29 UTC
(In reply to comment #8)
> mind file collisions please. I believe www-servers/apache-2.0.59-r5 and
> app-admin/apache-tools-2.2.4-r4 both provide /usr/sbin/ab2-ssl,
> /usr/sbin/log_server_status and /usr/sbin/split-logfile2. (last rsync was Sun
> Sep  2 02:00:13 2007 (GMT+1))

sorry, I mean Sun Sep  2 22:50:56 2007 (GMT+1)

Comment 10 Benedikt Böhm (RETIRED) gentoo-dev 2007-09-03 06:35:49 UTC
apache-tools blocks <2.2 again, so this should be ok
Comment 11 Bart Van Loon 2007-09-03 09:41:00 UTC
(In reply to comment #10)
> apache-tools blocks <2.2 again, so this should be ok

well, not sure. is it possible now to have the latest stable apache installed *and* have access to important tools like htdigest2 and apache2ctl, without unmasking anything at all?
Comment 12 Giampaolo Tomassoni 2007-09-03 09:54:44 UTC
Benedikt removed the patch from apache-2.0.59-r5 which was halting the building of htpasswd, apachectl and such.

The blocking message is due to the fact you have apache-tools emerged, not because of the apache.

Now it is fine to me: simply unmerge apache-tools before re-emerging apache-2.0.59-r5. You have to re-emerge apache even if portage says you don't need to... Simply "emerge apache" after "emerge --unmerge apache-tools".
Comment 13 Bart Van Loon 2007-09-03 13:45:42 UTC
(In reply to comment #12)
> Benedikt removed the patch from apache-2.0.59-r5 which was halting the building
> of htpasswd, apachectl and such.
> 
> The blocking message is due to the fact you have apache-tools emerged, not
> because of the apache.
> 
> Now it is fine to me: simply unmerge apache-tools before re-emerging
> apache-2.0.59-r5. You have to re-emerge apache even if portage says you don't
> need to... Simply "emerge apache" after "emerge --unmerge apache-tools".

exactly. thanks.
Comment 14 lou 2007-09-03 23:38:41 UTC
Ok.. I have all the tools now, everything looks good, but now when I do apache2ctl -t, I get Syntax Error in the config related to php_admin_value or php_value in my vhost. This works fine in the older Apache. I rolled back to verify. 

here is a snip of the error:

comp named # apache2ctl -t
Syntax error on line 14 of /etc/apache2/vhosts.d/mydomain.com.conf:
Invalid command 'php_admin_value', perhaps mis-spelled or defined by a module not included in the server configuration

Here is the configuration it is complaining about:
php_admin_value safe_mode 1

I can comment out this line then it complains on the next line until all php_* values are commented.

My version and USE flags:
www-servers/apache-2.0.59-r5  USE="apache2 mpm-prefork ssl -debug -doc -ldap -mpm-itk -mpm-leader -mpm-peruser -mpm-threadpool -mpm-worker (-selinux) -static-modules -threads" 0 kB

Web sites seem to be working properly, etc. Seems like this version of apache2ctl doesn't understand my PHP module?

Here is my PHP info:
dev-lang/php-4.4.8_pre20070816  USE="apache2 bzip2 cli crypt ctype curl exif expat ftp gd iconv mhash mysql ncurses nls pcre readline session snmp sockets sqlite ssl truetype unicode xml zlib -adabas -bcmath -berkdb -birdstep -calendar -cdb -cgi -cjk -concurrentmodphp -db2 -dbase -dbmaker -dbx -debug -discard-path -doc -empress -empress-bcs -esoob -fastbuild -fdftk -filepro -firebird -flatfile -force-cgi-redirect -frontbase -gd-external -gdbm -gmp -hyperwave-api -imap -informix -inifile -interbase -iodbc -ipv6 -java-external -java-internal -kerberos -ldap -libedit -mcal -mcve -memlimit -ming -mnogosearch -msql -mssql -oci8 -oci8-instant-client -odbc -oracle7 -overload -pcntl -pfpro -pic -posix -postgres -recode -sapdb -sharedext -sharedmem -solid -spell -suhosin -sybase -sybase-ct -sysvipc -threads -tokenizer -wddx -xmlrpc -xpm -xsl -yaz -zip" 0 kB


Thanks!

Comment 15 Jesse Adelman 2007-09-03 23:47:51 UTC
Re: Comment #14:

Hrm, I have had to always add the same module options set in /etc/conf.d/apache2 to apache2ctl for per-module directives to be understood (and IFDefine blocks to work and not be skipped). For instance, in one of my setups, I'd do:

apache2ctl -D DEFAULT_VHOST -D INFO -D LANGUAGE -D SSL -D SSL_DEFAULT_VHOST -D SUEXEC -D PHP5 -t

which would allow apache2ctl to use module-specific directives, like PHP directives. Try this out, and if it still no workie, then report that here.
Comment 16 lou 2007-09-04 04:33:14 UTC
That seems to work, but I've never had to do that before. I'm guessing you just need to set an alias for that command.. or is something missing with this ebuild, etc?

Thanks!
Comment 17 Giampaolo Tomassoni 2007-09-04 10:32:04 UTC
Lou, I bet you didn't pay attention enough when running etc-update after emerging: in my case the updated /etc/conf/apache2 missed the PHP keys and others from APACHE2_OPTS. I guess your case is the same and you didn't add "-D PHP" to the new conf. Do it now and see if this solves. Please note that this kind of problems has probably nothing to do with this bug report: ask to the forums.
Comment 18 lou 2007-09-04 13:34:30 UTC
Hello

I did pay attention to etc-update. My /etc/conf.d/apache2 is correct with the proper -D flags in APACHE2_OPTS. I also stated that the web sites work correctly after restart (event hough apache2ctl complains). I tested all of my PHP sites, and they are served correctly, so PHP module is definitely being loaded on restart.

Here is what is listed in /etc/conf.d/apache2
APACHE2_OPTS="-D SECURITY -D DEFAULT_VHOST -D SSL -D SSL_DEFAULT_VHOST -D PHP4"

I've also verified this problem on three other servers. /etc/conf.d/apache2 has proper opts on those servers as well. 

I feel that this is related to this original bug, since this only started with the original bug report of missing apache2ctl and other tools. Now we have it, and it's seems to be behaving oddly.

I've been using Gentoo/Apache for over 4 years, and this is the first time I've had issues with apache2ctl and ever had the need to include all -D flags while testing the config.

Thanks!
Comment 19 Benedikt Böhm (RETIRED) gentoo-dev 2007-09-04 14:02:52 UTC
yes, this seems to be a minor regression because of the svn breakage, i will fix that on the next 2.0 bump ... but you should be aware that starting with 2.2 apache2ctl is just a symlink to /etc/init.d/apache2 which provides all the apache2ctl features and correctly handles APACHE2_OPTS
Comment 20 lou 2007-09-04 14:26:12 UTC
Excellent. Great to hear.

Thanks!