Topic on Project:Support desk

Summary last edited by Ciencia Al Poder 16:25, 22 April 2023 1 year ago

Enable the intl extension in php.ini. See Manual:php.ini for indications to find which php.ini is being loaded, and don't forget to restart apache or php-fpm after updating php.ini

NGC 54 (talkcontribs)

I try to install MediaWiki 1.36.0, and I receive this error:

MediaWiki 1.36 internal error

Installing some PHP extensions is required.

Required components

You are missing a required extension to PHP that MediaWiki requires to run. Please install:

Malyacko (talkcontribs)

What is unclear with the error message and its instructions?

NGC 54 (talkcontribs)

What instructions? I have already installed MediaWiki 1.35.0 and 1.35.1, and I did not received this error.

Taavi (talkcontribs)

As noted in the MediaWiki 1.36 upgrade notes, 1.36 and newer require the php intl extension. What instructions? "You are missing a required extension to PHP that MediaWiki requires to run. Please install: intl".

NGC 54 (talkcontribs)
Malyacko (talkcontribs)

Which exact operating system is running on that machine?

NGC 54 (talkcontribs)

MediaWiki files are installed on my computer, that uses a version of Windows 10.

NGC 54 (talkcontribs)
NGC 54 (talkcontribs)
Domagoj Starcevic (talkcontribs)

If you installed PHP, you do not need to ''install'' intl, it should already be there, you just need to enable it. To check you have the necessary file, go to your PHP /ext folder, and make sure that php_intl.dll file is there.

In your PHP folder, open the php.ini file with Notepad (if you only have a php.ini-development file, copy paste it in the same folder, and rename it to php.ini). find the line ;extension=intl and remove the semicolon, so it will be extension=intl

Also find the line that points to the PHP extensions folder /ext and edit it to the correct path. For me it's extension_dir = "C:/PHP/ext"

Using Apache server, I also had to do the following: Copy icu****.dll files (about five of them, they should already be there when you install PHP) from your PHP root folder to Apache /bin folder. Then restart Apache service and you should be good to go.

You can check the result with a PHP info page as described in a youtube video called Install & Set Up PHP on Apache Windows 10 (it won't let me insert the link, just search for it).


Hope this helps.

Nah1925 (talkcontribs)

The error when removing the semicolon out of the extension=intl did not work for me, the error still continues, any suggestions?

Ciencia Al Poder (talkcontribs)

You're probably editing the wrong php.ini. See Manual:php.ini for hints to see which php.ini is being used. Also, your webserver or php-fpm may need to be restarted to pick the new settings

Nah1925 (talkcontribs)

Wasn't that, i actually edited the real one and i forgot to restart apache for it to actually work, after i restarted, it worked fine.

NGC 54 (talkcontribs)
Jonathan3 (talkcontribs)

This is from my notes of setting up an Ubuntu 18.04 Digital Ocean VPS recently:

sudo apt install php-intl

I think after that you need:

sudo systemctl restart apache2

71.9.94.49 (talkcontribs)

Similar issue here, intl is installed, but WikiMedia does not recognize it as such. Extension is enabled in php.ini, extension dir is set correctly, other extension prerequisites that wikimedia reported run fine, but intl does not.

71.9.94.49 (talkcontribs)

Even though intl is installed, wikimedia reports the extension as missing. Does it need a default_locale?


intl

Internationalization support => enabled

ICU version => 68.1

ICU Data version => 68.1

ICU Unicode version => 13.0

Directive => Local Value => Master Value

intl.default_locale => no value => no value

intl.error_level => 2 => 2

intl.use_exceptions => Off => Off

Bawolff (talkcontribs)

check if its enabled on the webserver. Whether intl is enabled in commandline php is separate from if its enabled on the webserver.

2A02:8070:E1BA:4C00:7497:77A6:8A5C:9F27 (talkcontribs)

How can I check, if intl is running in easyphp devserver. I enabled intl in php.ini, restarted server and restarted PC (windows). Still error message: extension intl is missing.

Bawolff (talkcontribs)

you can create a php webpage containing just

<?php phpinfo();

And have it served by websserver and view in browser.

Rogelioga (talkcontribs)

These work's for me, removing the semicolon from:


;extension=intl


in the file php.ini

2A02:8070:E1BA:4C00:46A:63DD:80A4:4DC1 (talkcontribs)

Hi, thanks for the answer, but with enable intl i mean, i tried uncommenting it and activate it in the easy php server settings :( still the error message. I even tried using a little older version of php.


any other ideas?

178.254.128.122 (talkcontribs)

Where do I find the php.ini file?

Ciencia Al Poder (talkcontribs)
2A02:8070:E1BA:4C00:748A:BF4F:EE49:160C (talkcontribs)

Thanks, but still get the error message. Any other ideas?

Jaya Johnson (talkcontribs)

I share my solution in windows. click on the xampp's apache' config and choose the PHP(php.ini),change the ;extension=intl to extension=intl. In the end ,restart the xampp and start the apache and mysql.

Tumbuka Arch (talkcontribs)

Hi,

Your instructions are incomplete .Nothing really happens.It just shows a notepad with many instructions and introductions.

32.220.168.171 (talkcontribs)

I am unable to resolve this error. I give up on the installation.

Nah1925 (talkcontribs)

try using wampserver.