Re: New Installer for PHP 5.2

From: Date: Tue, 25 Jul 2006 11:59:19 +0000
Subject: Re: New Installer for PHP 5.2
References: 1 2 3 4 5 6  Groups: php.internals 
Request: Send a blank email to internals+get-24967@lists.php.net to get a copy of this message
Hi there, On 7/24/06, Steph Fox <steph@zend.com> wrote:
Sorry for the double-send there John :-\ this is _really_ not my day.
Yep good - note a few minor problems with layout though: ; Local Variables: ; tab-width: 4 ; End: [PHP_JSON] extension=php_json.dll - it shouldn't be after vi settings (simply write them last?), and 'extension' is not a PHP_JSON directive - it's a [PHP] directive and should be part of the main clause.
I know. The ini files with Wix don't allow the same directive listed muliple times in a section ( unless you comma-delimit it, eg. "extension=php_bz.dll,php_gd.dll" ), so I had to do it this way. But it does appear to work fine, I'm curious if this will cause any issue down the line. I was under the impression they're used in ini_get_all() (http://il.php.net/manual/en/function.ini-get-all.php) but it appears those headers - and the ordering - don't affect that function, or phpinfo(). Maybe someone on the core dev team knows of a place they make a difference? Or are they there to assist the docs team in some way? A quick tour around similar functions says nothing uses it... Not sure of a good way to keep the vi settings always at the end. I'll see what I can do. Maybe drop them altogether (how many doze users that would use an installer use vi?) ... /me waits for howls of outrage...
That was my original thought as well, I can try it and see how it goes.
6) is there - or will there be - any way to set up the chosen server configuration via the installer (for all servers or even just for Apache?) - again, I didn't test with a server install so this might be in place already.
IIS CGI and Xitami will be configured automatically ( and we could add Sambar to that list if there is interest ), but Apache uses a wierd config file format that I don't have a good tool to edit.
httpd.conf's weird? It's only a text file :) the complication's in the fact that there's more than one way to set it up. But you could offer automated basic CGI setups pretty easily using the paths you've already been given for php.exe and php.ini, and the module setup actually isn't that complicated either, assuming you already know it's an apache module setup that's required.
It's not hard, but it is a non-standard file, and I have no way of locating where it is (Apache ) thru the registry. Browse button option? It's always in /conf.. Apache installs are registered, if the apache.org installer was used. At least, the one I currently have for Apache 1.3 is. (The other one was built locally, so isn't.) Now adding a post-install config tool may be a good option here. Currently that's how we handle IIS, I could see the same working here.
That's probably what I would do with a post-install config tool. Does the order of the directives matter to the httpd.conf file ( I was under the impression that it did ), or could we go the route of doing what many linux distros do and include a file with the PHP settings.
Don't forget smtp url (sendmail alternative) if you do that, it causes the most confusion of all for win32 newbies :)
Sounds reasonable. I'll look into adding an additional dialog for this.
7) how about further php.ini modifications? - remembering that the existence of many directives depends on the extensions installed. (These come under 'would be sweet if...')
We do many of these, such as enabling cgiforceredirect, upload_tmp_dir, and session.save_path, along with adding Registry Keys and Enviroment variables that are needed under Windows ( after install try typing 'php -v' at the command line and it should find the PHP install correctly ). I also register .php files to open with php-win.exe if you install the 'Script Program' option.
Actually typing php -v and php -m was how I found out it was registered :) Didn't know you'd set some of those options because I only tested a couple of odd extensions to see how it was set up. That said, gd was one of those extensions, and I didn't see an option to reset gd.jpeg_ignore_warning - did you only look at directives involving paths for now?
Actually, just ones I knew about. If you know of more, let me know and I'll add them in. I grepp'd, but my regexp skills are so poor I had to replace $1 everywhere manually afterwards :( Results for core 5_2 attached, my copy's a couple of weeks out of date but json doesn't have any at least... This is everything that's in the core. Note they are extension-specific (on the whole anyway), it's not a huge wad of stuff that's all got to be configured at the same time, and you _could_ just offer 'accept defaults'.
Thanks for the list! For most of these, leaving them at thier default would be fine. Me personally, I haven't had a need to change most of these when I've used PHP on Windows, and if one would need to they can jump into the php.ini file themselves. My big concern is getting the important ones set if the need to be different from thier default and those that are environmental ( like session.save_path for example ). Thanks again... -- Later, John Mertic "Explaining a joke is like dissecting a frog: you jmertic@gmail.com understand it better, but the frog dies in the process." -Mark Twain

« previous php.internals (#24967) next »