Everything updated, PHP 5.3 musings
September 12, 2011 by Jason · 23 Comments
Apache's httpd is now 2.2.20 to fix that bit of recent DoS nastyness, PHP is up to 5.2.17, MySQL up to 5.1.58, XCache has been updated to the 1.3.2 release, and a few included deps have been bumped as well.
One thing I've been considering lately is the upgrade to PHP 5.3. I was saying for a long time that I was not going to force people to upgrade because of the sheer volume of systems with outdated ioncube and zend loaders that would break (more zend than ioncube), but to be honest, you've all had a long time to remedy that issue, and with the EOL on PHP 5.2 (5.2.16 was supposed to be the last release, they made a 5.2.17 to cover an issue, who knows how many more times they'll do that), I think it's time to upgrade the repo.
I've personally been running PHP 5.3 on Amazon's EC2 for about 6 months now and have not had a single issue. I can't say none of you will, and you should probably all start reading the PHP 5.3 migration guide, particularly the sections on backwards incompatible changes, removed extensions, and deprecated functions, but I'll help where I can when the day comes to push out the version bump. That's not to say it will be tomorrow, for one, I'm leaving town tomorrow on business, and it won't be next week either, but at some point over the next month or two, I'll be pushing PHP 5.3 updates (with a warning on the site first, check back once in a while or subscribe to the RSS feed).
Oh, and as a reminder to all, updates are available early to those that use my "Testing" repos. These are packages I consider production-quality enough to try on my live systems and typically once a package is pushed to that point I don't rebuild again. I just wait a week and copy them to the GA repos.
I have a updating problem the package mod_perl
The perl module TAP::Harness and TAP:Formatter:Console is required but i have correctly installed this module
Morning! Just ran the updates, reloaded httpd and am getting this error:
Starting httpd: Syntax error on line 66 of /etc/httpd/modsecurity.d/modsecurity_crs_40_generic_attacks.conf:
Error creating rule: Error compiling pattern (offset 816): POSIX collating elements are not supported
Line 66 in modsecurity_crs_40_generic_attacks.conf:
"phase:2,capture,t:none,t:htmlEntityDecode,t:replaceComments,t:compressWhiteSpace,t:lowercase,ctl:auditLogParts=+E,log,auditlog,msg:'SQL Injection Attack',id:'950001',tag:'WEB_ATTACK/SQL_INJECTION',logdata:'%{TX.0}',severity:'2'"
Anyone else having this issue?
@nszumowski,
https://bugs.archlinux.org/task/25637
This seems to be a bug in pcre 8.13. I'll rebuild and get an update out in the next 30 minutes or so.
EDIT: Fixed, run yum update again. Clear your yum cache if you aren't getting it (I had one dev box that refused to see the update until I ran a "yum clean all").
@Alessio,
I don't have the time to figure out what went wrong on that one right now, I need to get to a couple meetings, pack, and then catch a flight. The updated 2.0.5 packages have been pulled. Run "yum clean all" and your upgrade should proceed as normal.
Great, thanks a ton for looking into that and updating!
I'm running into a depsolving problem:
-> Running transaction check
--> Processing Dependency: php = 5.2.16 for package: php-eaccelerator
---> Package php.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-cli.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-common.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-devel.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-gd.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-mbstring.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-mcrypt.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-mhash.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-mysql.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-pdo.x86_64 0:5.2.17-jason.2 set to be updated
---> Package php-xml.x86_64 0:5.2.17-jason.2 set to be updated
--> Finished Dependency Resolution
1:php-eaccelerator-0.9.6.1-jason.3.x86_64 from installed has depsolving problems
--> Missing Dependency: php = 5.2.16 is needed by package 1:php-eaccelerator-0.9.6.1-jason.3.x86_64 (installed)
Error: Missing Dependency: php = 5.2.16 is needed by package 1:php-eaccelerator-0.9.6.1-jason.3.x86_64 (installed)
@steven,
Upload error, the php-eaccelerator packages for 64-bit systems were missing. Not sure how they didn't get copied over. You should get an update now that ends in "jason.4".
As an aside, it's 85 degrees in this airport and connecting remotely to a 2560x1440 screen via 3G on a 1280x800 laptop stinks. Also, I'm hungry and there doesn't seem to be a restaurant in Terminal F of PHL...
Hi,
I was hoping that you would upgrade to PHP v3.. So that I was able to solve my problem. Can you show me the way, how to solve this problem with PHP that I am having at this moment. I tried, yum clean all, yum downgrade... install... everything, but nothing seems to be able to solve below error's that I am getting.
Can you please give me the steps I should take, to have your version of PHP ? If I try to delete the yum remove php, then my plesk also get's uninstalled.. so I need some way, without damaging this :).
Thanks in advance.
php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/dbase.so' - /usr/lib64/php/modules/dbase.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: session mysql: Unable to initialize module
Module compiled with module API=20050922
PHP compiled with module API=20090626
These options need to match
in Unknown on line 0
PHP 5.3.8 (cli) (built: Aug 26 2011 11:37:40)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with XCache v1.3.2, Copyright (c) 2005-2011, by mOo
@Jason,
Just letting you know that 2.2.21 was released to re-fix the DoS issue. Any chance we could get a new update?
@Jesse,
Figures... I'm traveling at the moment, I'll take a look tomorrow or Monday.
@Jason,
Can you help me in any way ?
@foekie_t,
I told you what you needed to do in another comment thread. Disable all but one 3rd party repo, remove any packages from the disabled ones with "rpm -e --nodeps", and then reinstall the removed ones from a repo that is still on your system.
@Jason,
Any chance to look at 2.2.21?
Hi Jason. First of all, thanks for maintaining the repo.
I´m getting a dependency fail on updating apr related to mod_ssl. Any ideas?
1:mod_ssl-2.2.20-jason.1.x86_64 from utterramblings has depsolving problems
--> Missing Dependency: httpd = 2.2.20-jason.1 is needed by package 1:mod_ssl-2.2.20-jason.1.x86_64 (utterramblings)
Error: Missing Dependency: httpd = 2.2.20-jason.1 is needed by package 1:mod_ssl-2.2.20-jason.1.x86_64 (utter ramblings)
Any Ideas?
Regarding updating php to 5.3 I think you should, but maybe leave a way we can update selectively on servers. Perhaps a package named php52 for the servers you want to keep 52 and php for the 5.3 branch.
Hi Jason,
I understand you, but when I try to remove the package with yum remove, it tries to remove the plesk installation. I already have removed the other repo, but when I read you text, you want me to use the "rpm -e --nodeps"... as I have never used this command before, can you help me on how to use that command to safely remove the php installation and install it back.. ? So HOW should I remove the PHP installation and install it back with yum install ?
Thanks.
p.s. sorry, I am a newbeee in this sort of things :).
@Foekie_t,
Type "rpm -e --nodeps" followed by a list of the packages you installed from the other repo (php, php-common, php-cli, php-mysql, etc.). If you are removing packages that are part of currently running programs then you should stop those services first (eg. "service httpd stop"). Once the packages have been removed, run "yum install" and that same list of packages. They should be filled either from the core repos or whichever 3rd party you've left enabled. Last, restart the services you stopped (eg. "service httpd start").
Hi Jason,
I tried what you mentioned... but it didn't work 🙁
1) first stopped services
2) I removed the php with: rpm -e --nodeps php php-cli php-common ( common was not removed, got this message: error: "php-common" specifies multiple packages )
3) Tried to install php, with yum install php
4) restarted httpd
But, the php didn't install due to below errors. Any steps you can advice ?
# yum install php
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
* base: centos.kiewel-online.ch
* extras: centos.kiewel-online.ch
* rpmforge: ftp-stud.fht-esslingen.de
* updates: centos.kiewel-online.ch
Excluding Packages in global exclude list
Finished
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.2.17-jason.2 set to be updated
--> Processing Dependency: php-cli = 5.2.17-jason.2 for package: php
--> Processing Dependency: php-common = 5.2.17-jason.2 for package: php
--> Running transaction check
---> Package php.x86_64 0:5.2.17-jason.2 set to be updated
--> Processing Dependency: php-common = 5.2.17-jason.2 for package: php
---> Package php-cli.x86_64 0:5.2.17-jason.2 set to be updated
--> Processing Dependency: php-common = 5.2.17-jason.2 for package: php-cli
--> Finished Dependency Resolution
php-5.2.17-jason.2.x86_64 from utterramblings has depsolving problems
--> Missing Dependency: php-common = 5.2.17-jason.2 is needed by package php-5.2.17-jason.2.x86_64 (utterramblings)
php-cli-5.2.17-jason.2.x86_64 from utterramblings has depsolving problems
--> Missing Dependency: php-common = 5.2.17-jason.2 is needed by package php-cli-5.2.17-jason.2.x86_64 (utterramblings)
Error: Missing Dependency: php-common = 5.2.17-jason.2 is needed by package php-cli-5.2.17-jason.2.x86_64 (utterramblings)
Error: Missing Dependency: php-common = 5.2.17-jason.2 is needed by package php-5.2.17-jason.2.x86_64 (utterramblings)
Best regards,
Oww... damzz.. now nothing works on my server :).
Pls, give some feedback back fast 🙂
@Foekie_t,
If you have multiple versions of php-common installed then something has gone really wrong with your system. Either you forced two copies with rpm or yum is broken.
I don't mean any offense, but it really doesn't sound like you have much experience with Linux. Your best bet is probably to backup your data and ask your host to reinstall the box. Once they do, leave it alone.
If you really insist on trying to clean this up, run 'rpm -qa | grep php' and then remove every single php package listed. You can get around the multiple version issue by specifying the full name of the package, including the version number, when running your 'rpm -e'.
Hello Jason,
thank you very much for your work on the repository! I'm so happy with it as the opportunities to have PHP 5.2 on CentOS where not so great before.
Do you have any plans to provide PHP 5.3?
Thanks again, best regards,
Viktor
had not seen a lot of comments on this so I waited a few months to see if there were any more success/horror stories. Updated last night, and no problems updating from the last release.
Hello!
I can't seem to find the PHP 5.3 under http://www.jasonlitka.com/media/EL5-Testing/x86_64/ . Any idea where can I find the package?
TIA
Can we have PHP5.3 please.
I saw a way to have both 5.2 and 5.3 version in another repo and with simple filter command, users can install whatever they need/prefer. maybe that will be a better option than waiting for all to upgrade straight away.
regards,