Re: php mbstring extension doesnt load [message #175332 is a reply to message #175330] |
Tue, 06 September 2011 02:15 |
Cat 22
Messages: 6 Registered: September 2011
Karma:
|
Junior Member |
|
|
Cat 22 wrote:
> Cat 22 wrote:
>
>> Jerry Stuckle wrote:
>>
>>> On 9/5/2011 8:06 PM, Cat 22 wrote:
>>>> Jerry Stuckle wrote:
>>>>
>>>> > On 9/4/2011 1:03 AM, Cat 22 wrote:
>>>> >> Jerry Stuckle wrote:
>>>> >>
>>>> >>> On 9/3/2011 7:09 PM, Cat 22 wrote:
>>>> >>>> I'm on a mandriva x64 (2010.0) system and have
>>>> >>>> PHP 5.2.6 (cli) (built: Nov 15 2009 11:54:34)
>>>> >>>> installed, i use lighttpd as my webserver for local stuff.
>>>> >>>> I find i need the mbstring extension so i installed it via
>>>> >>>> mcc its now in /usr/lib64/php/extensions/mbstring.so
>>>> >>>> but php -m dosent list it as loaded.
>>>> >>>> The /etc/php.ini file has an mbstring section which i
>>>> >>>> set to this (all the other items under [mbstring] are
>>>> >>>> commented out):
>>>> >>>> [mbstring]
>>>> >>>> ; language for internal character representation.
>>>> >>>> ; http://php.net/mbstring.language
>>>> >>>> mbstring.language = English
>>>> >>>>
>>>> >>>> I restarted lighttpd but i still dont have mbstring loaded.
>>>> >>>> What have i missed?
>>>> >>>> Thanks
>>>> >>>> Cat22
>>>> >>>>
>>>> >>>>
>>>> >>>
>>>> >>> Did you load the extension in your php.ini file?
>>>> >>>
>>>> >> I tried that, like this but it didnt help
>>>> >>
>>>> >> from /etc/php.ini:
>>>> >>
>>>> >> ; Directory in which the loadable extensions (modules) reside.
>>>> >> ; http://php.net/extension-dir
>>>> >> extension_dir = "/usr/lib64/php/extensions"
>>>> >>
>>>> >> ; If you wish to have an extension loaded automatically, use
>>>> >> the following
>>>> >> ; syntax:
>>>> >> ;
>>>> >> ; extension=modulename.extension
>>>> >> extension=mbstring.so<== i added this line
>>>> >> ;
>>>> >> ; On Mandriva, we don't add the extensions in php.ini anymore,
>>>> >> we put ; them in /etc/php.d/<number>_<name>.ini, for example
>>>> >> 10_recode.ini. ;
>>>> >> ; This is so that the RPMS can register themselves without
>>>> >> having to ; modify the php.ini file.
>>>> >>
>>>> >> Also:
>>>> >>
>>>> >> #locate mbstring
>>>> >> /etc/php.d/29_mbstring.ini
>>>> >> /usr/lib64/php/extensions/mbstring.so
>>>> >>
>>>> >> #cat /etc/php.d/29_mbstring.ini
>>>> >> extension = mbstring.so
>>>> >>
>>>> >> I then restarted lighttpd
>>>> >> Still no joy
>>>> >> Thanks
>>>> >> Cat22
>>>> >
>>>> >
>>>> > OK, some other questions. First of all, did you change the
>>>> > correct
>>>> > php.ini file? This usually is more of a problem in Windows
>>>> > systems than
>>>> As near as i can tell i have these:
>>>> /etc/php-cgi-fcgi.ini
>>>> /etc/php.ini
>>>> /etc/php.ini.ccpbackup
>>>>
>>>> grepping i find:
>>>>
>>>> rep mbstring /etc/php.ini
>>>> extension=mbstring.so
>>>> [mbstring]
>>>> ; http://php.net/mbstring.language
>>>> mbstring.language = English
>>>> ; http://php.net/mbstring.internal-encoding
>>>> ;mbstring.internal_encoding = EUC-JP
>>>> ; http://php.net/mbstring.http-input
>>>> ;mbstring.http_input = auto
>>>> ; http://php.net/mbstring.http-output
>>>> ;mbstring.http_output = SJIS
>>>> ; mbstring.internal_encoding setting. Input chars are
>>>> ; http://php.net/mbstring.encoding-translation
>>>> ;mbstring.encoding_translation = Off
>>>> ; http://php.net/mbstring.detect-order
>>>> ;mbstring.detect_order = auto
>>>> ; http://php.net/mbstring.substitute-character
>>>> ;mbstring.substitute_character = none;
>>>> ; overload(replace) single byte functions by mbstring functions.
>>>> ; http://php.net/mbstring.func-overload
>>>> ;mbstring.func_overload = 0
>>>> ;mbstring.strict_detection = Off
>>>> ; Default: mbstring.http_output_conv_mimetype=^(text/|
>>>> application/xhtml\+xml)
>>>> ;mbstring.http_output_conv_mimetype=
>>>> ;mbstring.script_encoding=
>>>> ; With mbstring support this will automatically be converted
>>>> into the encoding
>>>> ; given by corresponding encode setting. When empty
>>>> mbstring.internal_encoding
>>>>
>>>> and for the other ini file:
>>>> grep mbstring /etc/php-cgi-fcgi.ini
>>>> extension=mbstring.so
>>>> [mbstring]
>>>> ; http://php.net/mbstring.language
>>>> mbstring.language = English
>>>> ; http://php.net/mbstring.internal-encoding
>>>> ;mbstring.internal_encoding = EUC-JP
>>>> ; http://php.net/mbstring.http-input
>>>> ;mbstring.http_input = auto
>>>> ; http://php.net/mbstring.http-output
>>>> ;mbstring.http_output = SJIS
>>>> ; mbstring.internal_encoding setting. Input chars are
>>>> ; http://php.net/mbstring.encoding-translation
>>>> ;mbstring.encoding_translation = Off
>>>> ; http://php.net/mbstring.detect-order
>>>> ;mbstring.detect_order = auto
>>>> ; http://php.net/mbstring.substitute-character
>>>> ;mbstring.substitute_character = none;
>>>> ; overload(replace) single byte functions by mbstring functions.
>>>> ; http://php.net/mbstring.func-overload
>>>> ;mbstring.func_overload = 0
>>>> ;mbstring.strict_detection = Off
>>>> ; Default: mbstring.http_output_conv_mimetype=^(text/|
>>>> application/xhtml\+xml)
>>>> ;mbstring.http_output_conv_mimetype=
>>>> ;mbstring.script_encoding=
>>>> ; With mbstring support this will automatically be converted
>>>> into the encoding
>>>> ; given by corresponding encode setting. When empty
>>>> mbstring.internal_encoding
>>>>
>>>>
>>>> > Unix ones, but it can still occur. phpinfo() will show you
>>>> > which ini file is being used.
>>>> I dont have phpinfo on my system.
>>>> I do have these tho:
>>>> php php-cgi php-config php-fcgi phpize
>>>>
>>>> >
>>>> > Also, are you using the 64 bit version of PHP? Is the version
>>>> > of mbstring you installed the correct one for your version of
>>>> > PHP (I don't
>>>> yes, i checked using the "file" cmd and php, php-cgi and
>>>> lighttpd are all x86_64 executables as is mbstring.so so no
>>>> conflict there
>>>> > know where you got either one). Also, what's in
>>>> > /etc/php.d/29_mbstring.ini? Is this the file you're supposed
>>>> > to include?
>>>> >
>>>> > ALso, I'm not familiar with Mandriva, but you should be asking
>>>> > them what they requires for their package system to work.
>>>> >
>>>> Well generally in Mandrive there are ini files located in
>>>> /etc/php.d/, each file has a one liner "extension=mbstring.so"
>>>> (as an example
>>>> the actual mbstring.so file is in /usr/lib64/php/extensions/
>>>>
>>>> My guess at this point is that the vesion of php they distribute
>>>> has no ability to load modules at run time.
>>>> I cant find any info that shows any of the modules being
>>>> dynamically loaded. Its possible however that some ini option
>>>> has dynamic loading turned off
>>>>
>>>
>>> Dynamic loading would not be turned off (not even sure it can
>>> be).
>>>
>>> Once again - check phpinfo(). It will tell you (among a lot of
>>> other
>>> good things) which initialization file is being used. That's the
>>> one you need to be looking at.
>>>
>> There is no phpinfo on my system, should it have been part of php?
> I downloaded PHPsnippet-information-phpinfo.php fromthe net
> it shows a of of stuff but no reference to mbstring
> at the end of the listing i see this too:
> xml
>
> XML Support => active
> XML Namespace Support => active
> libxml2 Version => 2.7.6
>
> xmlreader
>
> XMLReader => enabled
>
> xmlwriter
>
> XMLWriter => enabled
>
> Additional Modules
>
> Module Name
>
> Looks to me like there are no modules being loaded at all
> I'm starting to think this is a Mandriva bug and strongly
> considering filing a bug report on it.
I filed a bug, you can review it if you like at
https://qa.mandriva.com/ bug #64176
|
|
|