Ошибка ah00526 apache

11 сентября, 2020 11:58 дп
4 443 views
| Комментариев нет

Centos, Debian, LAMP Stack, RHEL, Ubuntu

Эта серия мануалов поможет вам предотвратить или устранить самые распространенные ошибки, которые возникают при работе с веб-сервером Apache.

Каждый мануал в этой серии включает описание распространенных ошибок Apache, связанных с конфигурацией, сетью, файловой системой или привилегиями.

Сообщение об ошибке «AH00526: Syntax error» возникает, когда в конфигурационных файлах Apache есть опечатки или неверно настроенные параметры. Это общая ошибка, которая может указывать на ряд базовых проблем.

Ошибку можно обнаружить с помощью команды apachectl configtest еще перед загрузкой нерабочей конфигурации. Ее также можно найти с помощью команд systemctl и journalctl. В последних двух случаях Apache не сможет работать из-за ошибки.

Если вы обнаружили ошибку с помощью apachectl, перейдите к разделу, посвященному apachectl, в мануале Устранение общих ошибок Apache. Далее мы расскажем, как использовать systemctl для устранения этой ошибки.

Устранение ошибки с помощью systemctl

Согласно инструкциям по устранению неполадок из мануала Устранение общих ошибок Apache, первым шагом при устранении ошибки AH00526 будет проверка состояния Apache с помощью systemctl. Сейчас нам важно понять, влияет ли ошибка на запущенный процесс и препятствует ли она запуску Apache.

В дистрибутивах Ubuntu и Debian выполните следующую команду, чтобы проверить статус Apache:

sudo systemctl status apache2.service -l --no-pager

В системах CentOS и Fedora для проверки статуса Apache используйте эту команду:

sudo systemctl status httpd.service -l --no-pager

Флаг -l выводит все содержимое строки (то есть содержимое длинных строк не будет заменено многоточием (…)). Флаг –no-pager выводит весь на экран весь лог, не вызывая при этом инструмент less, который показывает только фрагмент содержимого.

Если в файлах действительно обнаружена ошибка AH00526, вы должны получить примерно такой вывод:

apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: failed (Result: exit-code) since Wed 2020-07-15 13:45:49 UTC; 1min 37s ago
. . .
Jul 15 13:45:49 f17f01056c5b systemd[1]: Starting The Apache HTTP Server...

Jul 15 13:45:49 f17f01056c5b apachectl[15860]: AH00526: Syntax error on line 2 of /etc/apache2/sites-enabled/000-default.conf:


Jul 15 13:45:49 f17f01056c5b apachectl[15860]: Invalid command 'SSSLCertificateFile', perhaps misspelled or defined by a module not included in the server configuration


Jul 15 13:45:49 f17f01056c5b apachectl[15860]: Action 'start' failed.


Jul 15 13:45:49 f17f01056c5b apachectl[15860]: The Apache error log may have more information.


Jul 15 13:45:49 f17f01056c5b systemd[1]: apache2.service: Control process exited, code=exited status=1


Jul 15 13:45:49 f17f01056c5b systemd[1]: apache2.service: Failed with result 'exit-code'.


Jul 15 13:45:49 f17f01056c5b systemd[1]: Failed to start The Apache HTTP Server.

Такой вывод подтвердит, что Apache не работает из-за синтаксической ошибки. В нашем случае ошибка вызвана лишним символом S в начале строки SSSLCertificateFile в файле /etc/apache2/sites-enabled/000-default.conf. Правильная директива – SSLCertificateFile. Чтобы устранить ошибку, вам нужно отредактировать файл и исправить имя директивы, после чего вы сможете запустить Apache.

Вывод systemctl в этом примере также содержит некоторые строки из лога systemd. Если в ваших выходных данных указывается, что определенная строка в вашем конфигурационном файле генерирует синтаксическую ошибку, вы можете пропустить команды journalctl и apachectl configtest. Вы можете перейти непосредственно к указанному файлу, проверить его и исправить ошибку, чтобы устранить AH00526.

Если ваш вывод не содержит информации о конкретном конфигурационном файле Apache, в котором есть ошибка, вам нужно будет изучить выходные данные journalctl из логов systemd. В следующем разделе мы покажем, как использовать journalctl для устранения ошибки AH00526.

Устранение ошибки с помощью journalctl 

Если в выводе systemctl нет сведений о синтаксической ошибке AH00526, вы можете продолжить ее поиски с помощью команды journalctl, которая проверит записи логов systemd на наличие упоминаний Apache.

В системах на основе Ubuntu и Debian выполните следующую команду:

sudo journalctl -u apache2.service --since today --no-pager

В системах типа CentOS, Fedora и RedHat используйте эту команду:

sudo journalctl -u httpd.service --since today --no-pager

Флаг –since today ограничивает вывод записями, зарегистрированными с 00:00:00 текущего дня. Эта опция поможет ограничить объем записей, которые вам понадобится изучить при проверке ошибок.

Если в конфигурации Apache есть ошибка AH00526, в выводе команды journalctl вы найдете такие строки:

-- Logs begin at Tue 2019-11-05 21:26:44 UTC, end at Tue 2020-06-09 15:13:01 UTC. --
. . .
Jun 09 15:12:28 f17f01056c5b apachectl[3157]: AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/000-default.conf:
Jun 09 15:12:28 f17f01056c5b apachectl[3157]: Invalid command 'SSLCertificateFile', perhaps misspelled or defined by a module not included in the server configuration
. . .

Первая строка вывода – это и есть ошибка AH00526. Она является общей ошибкой, связанной с недопустимой директивой или опечаткой в ​​ конфигурации. В следующей строке вывода объясняется, что вызвало такую ошибку. В данном случае это директива SSLCertificateFile: она будет действительна только в том случае, если модуль ssl включен.

Если вы столкнулись с ошибкой AH00526, связанной с недопустимой директивой SSLCertificateFile, вы можете устранить ее, включив модуль ssl, а затем перезапустив Apache.

Для систем Ubuntu и Debian используйте такую команду, чтобы включить модуль:

sudo a2enmod ssl
sudo systemctl restart apache2.service

В системах CentOS и Fedora сначала установите пакет mod_ssl, а затем загрузите модуль, добавив его в каталог Apache /etc/httpd/conf.modules.d:

sudo yum install mod_ssl
echo "LoadModule ssl_module modules/mod_ssl.so" | sudo tee > /etc/httpd/conf.modules.d/00-ssl.conf
sudo systemctl restart httpd.service

После того как Apache обратится к модулю и вы перезапустите его с помощью соответствующей команды в зависимости от дистрибутива Linux, сервер запустится (если в конфигурации больше нет ошибок).

Если же это не единственная ошибка в конфигурации, Apache и systemctl status продолжат сообщать о них и пытаться объяснить, что препятствует запуску сервера.

В системах Ubuntu и Debian systemctl будет выводить такие сообщения об ошибках:

Job for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details

В системах на основе CentOS, Fedora и RedHat вы получите такое сообщение:

Job for httpd.service failed because the control process exited with error code.
See "systemctl status httpd.service" and "journalctl -xe" for details.

Если же Apache по-прежнему не запускается из-за ошибок, команда apachectl configtest может быть наиболее эффективным и действенным способом диагностики в этом случае. В следующем разделе мы расскажем, как использовать эту утилиту для устранения ошибки AH00526.

Устранение ошибки с помощью apachectl

Чтобы устранить ошибку AH00526 с помощью утилиты apachectl, вы можете протестировать конфигурацию Apache с помощью подкоманды configtest. Этот инструмент проанализирует файлы Apache, чтобы определить, допустимо ли их содержимое, и, если нет, найдет неверные настройки в конфигурации.

Команда apachectl configtest полезна для выявления синтаксических ошибок в новой конфигурации веб-сервера перед перезагрузкой. Этот тест поможет вам избежать сбоев в обслуживании в случае неправильных настроек в ваших файлах Apache.

Следующий пример команды вернет сообщение об ошибке синтаксиса AH00526 и объяснит, что вероятная проблема заключается в том, что Apache ссылается на пустой файл SSLCertificateFile:

sudo apachectl configtest
AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/000-default.conf:
SSLCertificateFile: file '/etc/ssl/certs/example.com.pem' does not exist or is empty

В этом примере файл /etc/ssl/certs/example.com.pem не существует, что и указано в сообщении об ошибке. Чтобы решить проблему, вам нужно добавить сертификат SSL/TLS в файл или удалить эту директиву.

Если в конфигурации нет ошибок, команда apachectl должна показать следующее:

Syntax OK

Заключение

В этом мануале вы узнали, как устранить синтаксическую ошибку Apache AH00526. Первым шагом при исследовании любой ошибки Apache является проверка статуса сервера с помощью команды systemctl status apache2 или systemctl status httpd (в зависимости от вашего дистрибутива Linux). Так вы можете определить, правильно ли работает Apache или он не может запуститься из-за ошибки.

После того, как вы определили состояние Apache, вы можете дополнительно диагностировать его с помощью journalctl и изучить логи system для этого процесса. Затем вы можете использовать команду apachectl configtest, чтобы проверить файлы конфигурации на наличие ошибок.

Tags: Apache, apachectl, journalctl, systemctl

Apache Configuration Error Code ah00526 occurs when there is a typo or misconfigured setting somewhere in its configuration files.

As part of our Server Management Services, we assist our customers with several Apache queries.

Today, let us see how our techs go about this configuration.

Apache Configuration Error Code ah00526

We can detect this error using apachectl configtest before an invalid configuration loads.

We can also find it with the systemctl and journalctl commands.

Moving ahead, let us see how our Support Techs troubleshoot this with different commands.

  • Troubleshooting with systemctl

First and foremost, we need to check Apache’s status with systemctl.

On Ubuntu and Debian derived Linux distributions:

sudo systemctl status apache2.service -l –no-pager

On CentOS and Fedora systems:

sudo systemctl status httpd.service -l –no-pager

Our output will be similar to the following:

● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: failed (Result: exit-code) since Wed 2020-07-15 13:45:49 UTC; 1min 37s ago
. . .

Jul 15 13:45:49 f17f01056c5b systemd[1]: Starting The Apache HTTP Server...
Jul 15 13:45:49 f17f01056c5b apachectl[15860]: AH00526: Syntax error on line 2 of /etc/apache2/sites-enabled/000-default.conf:
Jul 15 13:45:49 f17f01056c5b apachectl[15860]: Invalid command 'SSSLCertificateFile', perhaps misspelled or defined by a module not included in the server configuration
Jul 15 13:45:49 f17f01056c5b apachectl[15860]: Action 'start' failed.
Jul 15 13:45:49 f17f01056c5b apachectl[15860]: The Apache error log may have more information.
Jul 15 13:45:49 f17f01056c5b systemd[1]: apache2.service: Control process exited, code=exited status=1
Jul 15 13:45:49 f17f01056c5b systemd[1]: apache2.service: Failed with result 'exit-code'.
Jul 15 13:45:49 f17f01056c5b systemd[1]: Failed to start The Apache HTTP Server.

Here, we can see that Apache is not running because of the syntax error.

This is due to an extra S character at the beginning of the SSSLCertificateFile line in the /etc/apache2/sites-enabled/000-default.conf file.

Hence, editing the file to fix the directive name will resolve the error and allow Apache to start.

  • Troubleshooting with journalctl logs

In case the systemctl output does not include specifics of the error, we go ahead with the journalctl command to examine systemd logs for Apache.

To check this, on Ubuntu and Debian-derived systems, we run:

sudo journalctl -u apache2.service –since today –no-pager

On CentOS, Fedora, and RedHat-derived systems:

sudo journalctl -u httpd.service –since today –no-pager

The –since today flag will help restrict the volume of log entries that we need to examine.

We will receive an output similar to the following:

-- Logs begin at Tue 2019-11-05 21:26:44 UTC, end at Tue 2020-06-09 15:13:01 UTC. --
. . .
Jun 09 15:12:28 f17f01056c5b apachectl[3157]: AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/000-default.conf:
Jun 09 15:12:28 f17f01056c5b apachectl[3157]: Invalid command 'SSLCertificateFile', perhaps misspelled or defined by a module not included in the server configuration
. . .

The first line of output is the AH00526 error. A general error, it relates to an invalid setting or a typo in a configuration file. And the next line explains what caused the error.

In this case it is the SSLCertificateFile directive, which will only be valid if we enable the ssl module.

Invalid SSLCertificateFile directive

If the AH00526 error relates to an invalid SSLCertificateFile directive, we can resolve it by enabling the ssl module and then restarting Apache.

For Ubuntu and Debian systems:

sudo a2enmod ssl
sudo systemctl restart apache2.service

On CentOS and Fedora systems, we ensure that we have the mod_ssl package, and then load the module by adding it to Apache’s /etc/httpd/conf.modules.d directory in a file like this:

sudo yum install mod_ssl
echo “LoadModule ssl_module modules/mod_ssl.so” | sudo tee > /etc/httpd/conf.modules.d/00-ssl.conf
sudo systemctl restart httpd.service

Once Apache reference the module, we restart it using the command that is appropriate to the Linux distribution. The server will start up if there are no more errors in the configuration.

However, if there are more errors, it will continue to report them and attempt to explain why we can’t start the server.

Ubuntu & Debian Output:

Job for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -xe" for details

CentOS and Fedora Output:

Job for httpd.service failed because the control process exited with error code.
See "systemctl status httpd.service" and "journalctl -xe" for details.
  • Troubleshooting with apachectl

To troubleshoot with Apache’s apachectl utility, we test the Apache configuration using the configtest sub-command.

This tool will parse the Apache files to determine whether it’s valid and, if not, locate incorrect settings in the Apache configuration.

For example, here it explains that the likely problem is that Apache is referencing an empty SSLCertificateFile:

sudo apachectl configtest

Output

AH00526: Syntax error on line 3 of /etc/apache2/sites-enabled/000-default.conf:
SSLCertificateFile: file '/etc/ssl/certs/example.com.pem' does not exist or is empty

Here, the /etc/ssl/certs/example.com.pem file does not exist as the error message notes.

We can add an SSL/TLS certificate to the file, or remove the directive to resolve the issue.

A successful apachectl configtest invocation will result:

Syntax OK

[Need help with the troubleshooting? We are here for you]

Conclusion

In short, we saw how our Support Techs troubleshoot an Apache AH00526 syntax error.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

I’m new to Apache2, and I’m trying to get Apache2 running on my local Linux (linux mint 17). When I try to: sudo apache2, it gives me following error:

[Mon Jul 20 16:15:30.785526 2015] [core:warn] [pid 14221] AH00111:
Config variable ${APACHE_LOCK_DIR} is not defined [Mon Jul 20
16:15:30.785602 2015] [core:warn] [pid 14221] AH00111: Config variable
${APACHE_PID_FILE} is not defined [Mon Jul 20 16:15:30.785618 2015]
[core:warn] [pid 14221] AH00111: Config variable ${APACHE_RUN_USER} is
not defined [Mon Jul 20 16:15:30.785627 2015] [core:warn] [pid 14221]
AH00111: Config variable ${APACHE_RUN_GROUP} is not defined [Mon Jul
20 16:15:30.785644 2015] [core:warn] [pid 14221] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Mon Jul 20 16:15:30.787550
2015] [core:warn] [pid 14221:tid 140466817042304] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Mon Jul 20 16:15:30.787686
2015] [core:warn] [pid 14221:tid 140466817042304] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined [Mon Jul 20 16:15:30.787703
2015] [core:warn] [pid 14221:tid 140466817042304] AH00111: Config
variable ${APACHE_LOG_DIR} is not defined AH00526: Syntax error on
line 74 of /etc/apache2/apache2.conf: Invalid Mutex directory in
argument file:${APACHE_LOCK_DIR}

Then I searched some similar problem online and tried: sudo /etc/init.d/apache2 restart, it gave me:

  • Restarting web server apache2
    AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message

Again, I tried to find solution online which is adding: ServerName localhost at the end of the /etc/apache2/apache2.conf

Now the sudo /etc/init.d/apache2 restart command works but the sudo apache2 still gives same error.

Could anybody help me please?

auth private's user avatar

auth private

1,3181 gold badge9 silver badges22 bronze badges

asked Jul 20, 2015 at 23:25

user3512988's user avatar

1

Via the following thread, try these commands that require the usage of «service»:

sudo service apache2 status
sudo service apache2 start
sudo service apache2 stop
sudo service apache2 reload

RaminS's user avatar

RaminS

2,2084 gold badges22 silver badges30 bronze badges

answered May 22, 2016 at 21:23

dd263's user avatar

dd263dd263

595 bronze badges

try: sudo service apache2 {command} where instead of the {}’s you enter one of the following options:

  • start
  • restart
  • stop
  • status

answered Mar 15, 2016 at 1:01

user6063922's user avatar

I am running into this problem where Wamp is Orange and wont start. I don’t understand why this happened since everything was fine just a while ago. I was having trouble with a. framework (kohana) that I installed, then I resolved that issue by enabling » rewrite module» in apache everything work fine then. I don’t know if the Apache’s «orange issue» started right after that or later. Here are some errors that I see:

  • In MySQL Log:

    2014-04-16 12:02:03 8276 [Note] Plugin ‘FEDERATED’ is disabled.
    2014-04-16 12:02:03 8276 [Note] InnoDB: The InnoDB memory heap is
    disabled 2014-04-16 12:02:03 8276 [Note] InnoDB: Mutexes and rw_locks
    use Windows interlocked functions 2014-04-16 12:02:03 8276 [Note]
    InnoDB: Compressed tables use zlib 1.2.3 2014-04-16 12:02:03 8276
    [Note] InnoDB: Not using CPU crc32 instructions 2014-04-16 12:02:03
    8276 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2014-04-16
    12:02:03 8276 [Note] InnoDB: Completed initialization of buffer pool
    2014-04-16 12:02:03 8276 [Note] InnoDB: Highest supported file format
    is Barracuda. 2014-04-16 12:02:04 8276 [Note] InnoDB: 128 rollback
    segment(s) are active. 2014-04-16 12:02:04 8276 [Note] InnoDB: Waiting
    for purge to start 2014-04-16 12:02:04 8276 [Note] InnoDB: 5.6.12
    started; log sequence number 2568346 2014-04-16 12:02:04 8276 [Note]
    Server hostname (bind-address): ‘*’; port: 3306 2014-04-16 12:02:04
    8276 [Note] IPv6 is available. 2014-04-16 12:02:04 8276 [Note] — ‘::’
    resolves to ‘::’; 2014-04-16 12:02:04 8276 [Note] Server socket
    created on IP: ‘::’. 2014-04-16 12:02:04 8276 [Note] Event Scheduler:
    Loaded 0 events 2014-04-16 12:02:04 8276 [Note] wampmysqld: ready for
    connections. Version: ‘5.6.12-log’ socket: » port: 3306 MySQL
    Community Server (GPL)

-In Windows Event Viewer:

> The Apache service named reported the following error:
> >>> Invalid command 'Require', perhaps misspelled or defined by a module not included in the server configuration . The Apache service
> named reported the following error:
> >>> AH00526: Syntax error on line 224 of C:/wamp/bin/apache/Apache2.4.4/conf/httpd.conf: .

Not really sure why this is happening, and I am kinda of a new Wamp user, any help will be appreciated!

asked Apr 16, 2014 at 17:42

user1518071's user avatar

2

My situation and how I fixed it:
-same syntax error
-same orange Wamp icon
— port 80 not used
— I had checked Windows «Event Viewer» (Start > search «Event Viewer») and verified the event with the syntax error from the OP’s question.
— My windows is installed on the «E:» drive (that was a mistake), and WAMP is on 2nd hdd, «S:».
— I commented out some lines in this file: \wamp\bin\apache\apache2.4.9\conf\extra\httpd-autoindex using notepad
lines commented out like this:

# We include the /icons/ alias for FancyIndexed directory listings.  If
# you do not use FancyIndexing, you may comment this out.
#
#Alias /icons/ "s:/Apache24/icons/"
#
#<Directory "s:/Apache24/icons">
#    Options Indexes MultiViews
#    AllowOverride None
#    Require all granted
#</Directory>

Wamp works!

answered Nov 3, 2014 at 14:51

Mark Suter's user avatar

I found a solution, there was an existing thread that I did not see :

Invalid command ‘Require’, perhaps misspelled or defined by a module not included in the server configuration

The Require directive is supplied by mod_authz_core. If the module has not been compiled into your Apache binary, you will need to add an entry to your configuration file to load it manually. You can check which modules are compiled in with httpd.exe -l.

If the module is not compiled in, load it with a configuration line similar to the following:

LoadModule authz_core_module «/modules/standard/mod_authz_core.so»

You will need to adjust the path for your system of course, and on a Windows box the library may well be a dll rather than an so file.

Community's user avatar

answered Apr 16, 2014 at 19:32

user1518071's user avatar

Оглавление

1. Где смотреть ошибки веб-сервера и как правильно задать вопрос

2. Ошибки Apache в Windows

3. Ошибки PHP в Windows

4. Ошибки MySQL/MariaDB в Windows

5. Ошибки phpMyAdmin в Windows

6. Вопросы и ответы по веб-серверу в Windows


Где смотреть ошибки веб-сервера и как правильно задать вопрос

Некоторые ошибки выводятся при открытии сайтов на локальном хостинге или при тестировании своих скриптов. Такие ошибки обычно сразу показываются в веб-браузере.

Некоторые ошибки не дают нормально установиться и запустится веб-серверу. Такие ошибки могут выводиться в командную строку (правда, не всегда в читаемом виде). Также может возникнуть ситуация, что показываться пустая веб-страница или какой-то компонент веб-сервера просто не запускается без видимых проблем.

В любом случае, самую полную информацию об ошибках Apache и PHP вы найдёте в файле журналов Apache (по ссылке подробности о содержимом и настройке этого файла). Если у вас веб-сервер установлен по этой инструкции, то путь до этого файла такой: C:\Server\bin\Apache24\logs\error.log. В любом случае, файл журнала находится по умолчанию в папке веб-сервера в подпапке logs, либо может быть в другом месте в соответствии с директивой ErrorLog. Также очень важные сообщения, в том числе и ошибки содержаться в файле C:\Server\bin\Apache24\logs\access.log.

Журнал ошибок MySQL и MariaDB находится в файле в C:\Server\data\DB\data\*.err (конкретное имя файла зависит от имени компьютера). Опять же, если вы устанавливали по другой инструкции или у вас другие настройки СУБД, то ищите этот файл в соответствии с вашими установками — по умолчанию он расположен в папке data и имеет расширение *.err.

Если ваша ошибка связана с установкой веб-сервера, то крайне желательно привести логи полностью, поскольку причина проблемы может быть в самых первых действиях.

Если ошибка возникла позже и связана с неправильной работой вашего скрипта или нового тестового сайта, то к этому моменту журналы могут быть переполнены информацией, которые не имеют отношение к этому вопросы. В этом случае, идеально было бы сделать так:

Остановите веб-сервер (иначе невозможно отредактировать файлы журналов):

c:\Server\bin\Apache24\bin\httpd.exe -k stop
net stop mysql

Очистите содержимое журналов:

C:\Server\bin\Apache24\logs\error.log
C:\Server\data\DB\data\*.err

Вновь запустите веб-сервер:

c:\Server\bin\Apache24\bin\httpd.exe -k start
net start mysql

Сразу после этого выполните действие, которое приводит к ошибке. И опять же, сразу после этого скопируйте содержимое журналов ошибок и выложите здесь в комментариях.

При любой ошибке, если вы планируете попросить помощи, ваша задача как можно полнее собрать и предоставить информацию: какие действия приводят к ошибке, какой текст ошибки, что в журналах веб-сервера, устанавливали по инструкции ссылка на которую дана выше или нет (если нет, то как именно), желательно сделать скриншот. Помните, что вам помогают на добровольных началах и «выдавливать» из вас по каплям информацию никому не интересно. Если вы непонятно/неполно изложили свою ситуацию, то, извините, никто из кожи лезть не будет, чтобы во что бы то ни стало вам помочь — по возможности сразу излагайте проблему полно и ясно.

Ошибки Apache в Windows

Ошибка:

Когда я кликаю на httpd.exe, мелькает чёрное окно, а затем исчезает

Решение:

Решение смотрите здесь: Окно Apache появляется и сразу пропадает (РЕШЕНО)

Ошибка:

Никак не могу установить apache, выдаёт ошибку:

AH00558: httpd.exe: Could not reliably determine the server's fully qualified domain name, using fe80::7978:6c40:7af5:6ea5. Set the 'ServerName' directive globally to suppress this message

Решение:

Это предупреждение, а не ошибка. По идее, Apache должен всё равно работать. У вас http://localhost/ открывается?

Чтобы это предупреждение не выводилось (цитата из инструкции):

меняем

#ServerName www.example.com:80

на

ServerName localhost

Ошибка:

При запуске httpd я получаю следующее сообщение:

(OS 10048)Обычно разрешается только одно использование адреса сокета (протокол/сетевой адрес/порт). : AH00072: make_sock: could not bind to address 0.0.0.0:80

AH00451: no listening sockets available, shutting down

AH00015: Unable to open logs

В качестве ОС использую Windows 8.1

Решение:

Данная ошибка вызвана тем, что какая-то программа прослушивает порт 80, при этом Apache пытается использовать этот же порт. Но две программы не могут это делать одновременно – отсюда и ошибка.

Для того, чтобы узнать, какая программа занимает этот порт:

1) нажмите сочетание клавиш WIN + x

2) из открывшегося списка выберете «Командная строка (администратор)»

3) скопируйте туда:

netstat -ano

4) Найдите строку, содержащую «0.0.0.0:80», в этой строчке нас интересует PID, например, в моём случае это 2168

Теперь нам нужно сопоставить идентификатор процесса с конкретной программой. Чтобы сопоставить идентификатор процесса программы, выполните следующие действия:

5) Нажмите сочетание клавиш WIN + x (или CTRL + ALT + DELETE) и нажмите кнопку «Диспетчер задач».

6) Перейдите на вкладку «Процессы».

7) Если не имеется столбец PID, щелкните «Просмотр», «Выбрать столбцы» и установите флажок «PID» (в русской версии – «ИД процесса»).

8) Щелкните заголовок столбца, под названием «PID» сортировка процесс по PID. Вы сможете легко найти идентификатор процесса, и он соответствует программе, которая отображается в диспетчере задач.

После того, как найдёте программу, которая занимает этот порт, в зависимости от нужности этой программы и от возможности её настройки, можно:

а) удалить эту программу;

или

б) настроить её на использование другого порта;

или

в) настроить Apache на использование другого порта

п.с. на самом деле, могут быть другие причины данной ошибки (кроме занятости порта) – например, неправильная конфигурация сервера Apache, либо запрет в политиках безопасности ОС на использование этого порта. Но если Вы не вносили изменений «от себя» в конфигурацию сервера и в конфигурацию Windows, то дело, почти наверняка, в занятости порта другой программой.

Ответ пользователя с ошибкой: Проблема решена — порт занимал Скайп (есть у него такая бяка в настройках соединения — использовать порты 80 и 443 в качестве альтернативных, после того, как я отключил эту опцию, всё заработало).


Ошибка:

Сервер замедляется, перестаёт отвечать на запросы, хотя причин для этого нет — он не перегружен.

В логах появляется ошибка AH00341: winnt_accept: Asynchronous AcceptEx failed:

[Thu Jun 05 07:24:55.747090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00455: Apache/2.4.9 (Win64) PHP/5.5.13 configured — resuming normal operations
[Thu Jun 05 07:24:55.747090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00456: Apache Lounge VC11 Server built: Mar 16 2014 12:42:59
[Thu Jun 05 07:24:55.747090 2014] [core:notice] [pid 1784:tid 444] AH00094: Command line: 'c:\\Server\\bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24'
[Thu Jun 05 07:24:55.748090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00418: Parent: Created child process 4952
[Thu Jun 05 07:24:55.957978 2014] [mpm_winnt:notice] [pid 4952:tid 388] AH00354: Child: Starting 64 worker threads.
[Thu Jun 05 07:26:16.695036 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.
[Thu Jun 05 07:26:16.695036 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.
[Thu Jun 05 07:26:48.250710 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.
[Thu Jun 05 07:26:48.250710 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.
[Thu Jun 05 07:29:27.137784 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.
[Thu Jun 05 07:29:27.137784 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно.  : AH00341: winnt_accept: Asynchronous AcceptEx failed.

Решение:

В файл httpd.conf нужно добавить следующие строки:

Для 2.2: 

Win32DisableAcceptEx 
EnableSendfile off 
EnableMMAP off 

Для 2.4: 

AcceptFilter http none 
AcceptFilter https none 
EnableSendfile off 
EnableMMAP off 

Ошибка:

работать с сервером не могу пока не запущу Apache Monitor.exe, сам Apache в службах значится -как запущенная служба, но через браузер (localhost и т.д.) никакой реакции, пока не произведу вышеуказанное действие, получается запускать апач монитор надо каждый раз для работы c сервером?

сделал чтоб консоль не закрывалась вот что пишет

C:\Server\bin\Apache24\bin>httpd.exe

AH00526: Syntax error on line 241 of C:/Server/bin/Apache24/conf/httpd.conf:

DocumentRoot must be a directory

Решение:

наиболее вероятная причина в том, что Вы ставите не на диск C, либо поменяли пути, названия папок, либо не создали папки, о которых говорится в статье. Суть в том, что Apache не видит каталога c:/Server/data/htdocs/

Оказалось, что: нашёл решение проблемы по запарке каталог data создал в bin действительно на свежую голову думается лучше а то после работы ничего не мог понять))


Ошибка:

Появилась проблема: до момента добавления строк

PHPIniDir "C:/Server/bin/PHP"
AddHandler application/x-httpd-php .php
LoadModule php5_module "C:/Server/bin/PHP/php5apache2_4.dll"

все работает, как надо. Но как только вставляю их в конец файла httpd.conf. выдает ошибку «the requested operation has failed». В логах

Restarting the server.
httpd.exe: Syntax error on line 532 of C:/Server/bin/Apache24/conf/httpd.conf: Cannot load C:/Server/bin/PHP/php5apache2_4.dll into server: \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc. 
[Mon Jul 06 02:38:24.688572 2015] [mpm_winnt:notice] [pid 2916:tid 392] AH00364: Child: All worker threads have exited.

Решение:

Необходимо установить Visual C++ Redistributable for Visual Studio 2017 (или любой другой более поздний).

Ошибки PHP в Windows

Ошибка:

При запуске команды «c:Server\bin\Apache24\bin\httpd.exe -k restart» машина выдала следующее:

httpd.exe: Syntax error on line 537 of C:/Server/Bin/Apache24/conf/httpd.conf: Cannot load C:/Server/bin/PHP/php7apache2_4.dll into server: \xed\xe5 \xed\xe0\xe9\xe4\xe5\xed\xf3\xea \xe0\xe7\xe0\xed\xed\xfb\xe9\xec\xee\xe4\xf3\xeb\xfc.

В папке PHP отсутствует файл php7apache2_4.dll, но имеются файлы php7.dll и php7phpdbg.dll.

Решение:

Вы скачали архив с версией для отладки. Посмотрите здесь, как правильно выбрать нужный файл.


Ошибка:

Вчера настроил всё, всё работает, но вот перенёс сайт и выдало ошибку:

Parse error: syntax error, unexpected 'new' (T_NEW) in C:\Server\data\htdocs\includes\joomla.php on line 840.

Решение:

Дело в версии PHP. Обновите движок вашего сайта. Если обновлений нет, то нужно править исходный код, подробности смотрите в статье «Решение проблемы на PHP 7: Parse error: syntax error, unexpected T_NEW».


Ошибка:

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\Server\data\htdocs\test.php:2 Stack trace: #0 {main} thrown in C:\Server\data\htdocs\test.php on line 2

вот что написано на test.php

<?php

$resource = mysql_connect('localhost','root', 'NFSmostwanted22');
if (!$resource) {
	die('Ошибка при подключении: ' . mysql_error());
}
echo 'Подключено успешно!';
mysql_close($resource);
?>

Ещё один вариант ошибки:

Создал в папке C:\Server\data\htdocs файл_test0000.html следующего содержания:

<html><head>
<link href="../css/phpMM.css" rel="stylesheet" type="text/css" />
</head><body>
<?php
$link1 = mysql_connect('localhost', 'root');
?>
</body></html>

и получаю сообщение:

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\Server\data\htdocs\_test0000.html:7 Stack trace: #0 {main} thrown in C:\Server\data\htdocs\_test0000.html on line 5

Решение:

Данное расширение — mysql_connect() — устарело, начиная с версии PHP 5.5.0, и удалено начиная с PHP 7.0.0. Используйте вместо него MySQLi или PDO_MySQL. Альтернативы для данной функции:

  • mysqli_connect()
  • PDO::__construct()

Ошибка:

Fatal error: Call to undefined function mb_detect_encoding() in C:\server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc on line 177

Решение:

Данная ошибка вызвана тем, что не подключено расширение mbstring. За это расширение в php.ini отвечает строчка

extension=php_mbstring.dll

Понятно, что для исправления ошибки нужно подключить расширение и перезапустить сервер (если не хотите ставить все расширения, как это описано в инструкции, то прежде чем выбрать, что Вам действительно нужно, лучше изучить описание каждого из них).

Тем не менее, теоретически, ошибка может быть вызвана тем, что из-за неправильной конфигурации Apache, файл php.ini вообще не «подхватывается» и PHP работает на дефолтных настройках, т.е. вообще без всех расширений. Но если это было бы так, то phpMyAdmin, в первую очередь пожаловался на то, что не определена другая функция (из-за отсутствия расширения отвечающего за связь с MySQL).


Ошибка:

 phpMyAdmin выдаёт ошибку http 500.

Ставлю сервер на Windows 7. Apache и MySQL встали нормально по Вашей инструкции. Дошёл до PHP. Скачал архив php-7.2.3-Win32-VC15-x64.zip. Добавил в конец файла httpd.conf строки по инструкции. Перезапускаю Apache.

C:\Users\Администратор>c:\Server\bin\Apache24\bin\httpd.exe -k restart

Получаю в командной строке сообщение:

httpd.exe: Syntax error on line 537 of C:/Server/Bin/Apache24/conf/httpd.conf: Cannot load C:/Server/bin/PHP/php7apache2_4.dll into server: %1 \xed\xe5 \xff\xe2
\xeb\xff\xe5\xf2\xf1\xff \xef\xf0\xe8\xeb\xee\xe6\xe5\xed\xe8\xe5\xec Win32.

В файле error.log появились строчки:

[Sun Mar 25 10:22:52.208678 2018] [mpm_winnt:notice] [pid 2608:tid 292] AH00455: Apache/2.4.33 (Win64) configured -- resuming normal operations
[Sun Mar 25 10:22:52.224278 2018] [mpm_winnt:notice] [pid 2608:tid 292] AH00456: Apache Lounge VC15 Server built: Mar 18 2018 12:58:47
[Sun Mar 25 10:22:52.224278 2018] [core:notice] [pid 2608:tid 292] AH00094: Command line: 'c:\\Server\\bin\\Apache24\\bin\\httpd.exe -d C:/Server/Bin/Apache24'
[Sun Mar 25 10:22:52.224278 2018] [mpm_winnt:notice] [pid 2608:tid 292] AH00418: Parent: Created child process 2696
[Sun Mar 25 10:22:52.583079 2018] [mpm_winnt:notice] [pid 2696:tid 180] AH00354: Child: Starting 64 worker threads.

"Syntax error in 524 line Cannont load "C:/Server/bin/PHP/php7apache2_4.dll" to server"

Решение

То был другой архив: php-7.2.3-Win32-VC15-x86.zip.

Скачал х64 и все заработало!


Ошибка:

возникла странная ошибка, причин которой понять не могу.

Стоит только добавить в каталог к PHP файл php.ini с любыми настройками, перестают выполняться php-скрипты. Убираю файл, перезапускаю Apache — работает (естественно до момента работы с базами данных например, тогда начинает просить расширения)

Решение:

Ответил сам пользователь: Оказалось, что в конфиге php по умолчанию выключена поддержка коротких тегов . Стоило ее включить и сразу все заработало 🙂


Ошибка:

В логах веб-сервера при каждом запуске Apache появляются ошибки:

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_curl.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_intl.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_ldap.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_pgsql.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0

Как их исправить?

Решение:

Вам нужно добавить путь до PHP в переменную окружения PATH в Windows.


Ошибка:

При использовании некоторых скриптов и CMS возникает ошибки:

Fatal error: Call to undefined function curl_multi_init() in …

Или:

Ошибка curl: SSL certificate problem: unable to get local issuer certificate

Решение:

Причина ошибки в том, что cURL настроена неправильно.

Чтобы cURL работала в Apache на Windows вам нужно:

1) Обязательно добавить PHP директорию в PATH (системные переменные среды). Как это сделать сказано чуть выше или здесь https://hackware.ru/?p=21#11

2) В файле C:\Server\bin\PHP\php.ini должна быть раскомментирована строка extension=curl

3) Необходимо скачать файл https://curl.haxx.se/ca/cacert.pem, затем в папке C:\Server\ создать новую папку с именем certs и в эту новую папку (C:\Server\certs\) переместите скаченный файл.

4) В файле C:\Server\bin\PHP\php.ini найдите строку

;curl.cainfo =

И замените её на

curl.cainfo = C:\Server\certs\cacert.pem

5) Перезапустите сервер.


Ошибка:

Выполнила 1-6 и также увидела

Fatal error: Uncaught Error: Call to undefined function mb_detect_encoding() in C:\Server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc:177 Stack trace: #0 C:\Server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc(282): _encode('The %s extensio…') 
#1 C:\Server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc(289): _gettext('The %s extensio…') 
#2 C:\Server\data\htdocs\phpmyadmin\libraries\core.lib.php(306): __('The %s extensio…') 
#3 C:\Server\data\htdocs\phpmyadmin\libraries\core.lib.php(961): PMA_warnMissingExtension('mbstring', true) 
#4 C:\Server\data\htdocs\phpmyadmin\libraries\common.inc.php(102): PMA_checkExtensions() 
#5 C:\Server\data\htdocs\phpmyadmin\index.php(13): require_once('C:\\Server\\data\\…') 
#6 {main} thrown inC:\Server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc on line 177

При этом extension_dir = «C:\Server\bin\PHP\ext\» прописано именно так.

На других форумах пишут, что должно быть активно mbstring. Но мы его раскомментировали. Либо надо ещё что-то сделать ?

Решение:

После внесения изменений в файлы настроек нужно перезапустить сервер.

Если сервер перезапустили, а ошибка осталась, то одним из случаев может быть когда файл php.ini не подхватывается сервером. У меня получается так сделать, если при настройке Apache я добавляю строки

AddHandler application/x-httpd-php .php
LoadModule php7_module "C:/Server/bin/PHP/php7apache2_4.dll"

А строку

PHPIniDir "C:/Server/bin/PHP"

не добавляю или пишу её с ошибкой.

Чтобы убедиться, что дело именно в том, что не подхватывается файл php.ini, выполните phpinfo (); (в статье описано, как это сделать) и найдите там Loaded Configuration File. Если запись такая:

То дело именно в этом.

Правильно должно быть так:

Loaded Configuration File C:\Server\bin\PHP\php.ini

Ответ пользователя: Оказалось, что php.ini-development надо было переименовать в просто php.


Ошибка:

Что-то у меня проблема с кодировкой. Если utf-8, то нормально. А 1251 странно глючит.

Все вроде нормально. Упростил код до безобразия 

<html>
  <head>
<META http-equiv="Content-Type" content="text/html; charset=windows-1251">
 <title>Проверка кодировки</title>
</head>
<body>
    <h1>Тестовый файл для проверки кодировки</h1>
</body>
</html>

Если файлу дать расширение html то в норме, а рсширение php — не работает, кракозябры идут, сам автоматом в utf перебрасывает.

AddDefaultCharset off
AddDefaultCharset WINDOWS-1251

не помогает

Решение:

Не нужно забывать о таком варианте, когда ваши действия по установке кодировки работают, но крякозяблы появляются от того, что сам файл в неправильной кодировке.

Установка кодировки в коде файла или в файле .htaccess влияет только на то, как браузер будет трактовать этот файл, но не конвертирует его в другую кодировку.

То есть, допустим, ваш файл реально сохранён в кодировке utf-8. Вы указываете в качестве кодировки windows-1251. И это работает: браузер трактует ваш файл как windows-1251, но показывает крякозяблы, поскольку на самом-то деле это utf-8.

Поэтому начните с того, что проверьте кодировку файла и при необходимости пересохраните в нужной кодировке.

Если кодировка правильная, то для PHP файла безотказно работает

header('Content-Type: text/html; charset=utf-8');

Эта функция отправляет нужную кодировку в заголовке. Она должна идти до любого вывода текста на экран. Кодировку поменяйте на свою.

У меня есть целая статья про кодировку «Решение проблем неправильной кодировкой веб-страницы». Там в конце показано, как проверить HTTP заголовки с помощью cURL, которые отправляются сервером.

Программа curl есть и в Windows, поэтому если у вас прям ничего не получится, то напишите, что выводит curl.

Ошибки MySQL/MariaDB в Windows

Ошибка:

Found option without preceding group in config file

mysqld: [ERROR] Found option without preceding group in config file C:\Server\bin\mysql-8.0\my.ini
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

Решение:

Ошибка в конфигурационном файле my.ini — пропущена секция [mysqld] или что-то подобное.


Ошибка:

MySQL сервер не запускается

Если MySQL не запускается, а в журнале ошибок вы видите строки Column count of mysql.user is wrong. Expected 51, found 49. The table is probably corrupted (количество колонок не соответствует ожидаемому, возможно таблица повреждена), а также Cannot load from mysql.tables_priv. The table is probably corrupted! (не получается прочитать из таблицы, возможно таблица повреждена), например:

2019-09-04T16:26:31.008436Z 0 [Warning] [MY-013143] [Server] Column count of mysql.user is wrong. Expected 51, found 49. The table is probably corrupted
2019-09-04T16:26:31.008449Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.db. The table is probably corrupted!
2019-09-04T16:26:31.008465Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.tables_priv. The table is probably corrupted!
2019-09-04T16:26:31.008482Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.tables_priv. The table is probably corrupted!
2019-09-04T16:26:31.008501Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.columns_priv. The table is probably corrupted!
2019-09-04T16:26:31.008509Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.procs_priv. The table is probably corrupted!
2019-09-04T16:26:31.008517Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.procs_priv. The table is probably corrupted!
2019-09-04T16:26:31.008525Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.proxies_priv. The table is probably corrupted!
2019-09-04T16:26:31.008532Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.proxies_priv. The table is probably corrupted!
2019-09-04T16:26:31.008539Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.proxies_priv. The table is probably corrupted!
2019-09-04T16:26:31.008547Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.role_edges. The table is probably corrupted!
2019-09-04T16:26:31.008554Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.role_edges. The table is probably corrupted!
2019-09-04T16:26:31.008562Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.default_roles. The table is probably corrupted!
2019-09-04T16:26:31.008569Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.default_roles. The table is probably corrupted!
2019-09-04T16:26:31.008577Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.global_grants. The table is probably corrupted!
2019-09-04T16:26:31.008584Z 0 [Warning] [MY-013139] [Server] Cannot load from mysql.password_history. The table is probably corrupted!
2019-09-04T16:26:31.008845Z 0 [ERROR] [MY-013139] [Server] Cannot load from mysql.global_grants. The table is probably corrupted!
2019-09-04T16:26:31.008938Z 0 [ERROR] [MY-010952] [Server] The privilege system failed to initialize correctly. For complete instructions on how to upgrade MySQL to a new version please see the 'Upgrading MySQL' section from the MySQL manual.
2019-09-04T16:26:31.017728Z 0 [ERROR] [MY-010119] [Server] Aborting
2019-09-04T16:26:32.072392Z 0 [System] [MY-010910] [Server] C:\Server\bin\mysql-8.0\bin\mysqld: Shutdown complete (mysqld 8.0.17)  MySQL Community Server - GPL.

Решение:

Если у вас что-то подобное, то попробуйте выполнить обновление.

Для этого переходим в папку с установленной СУБД (у вас путь может быть другим):

cd C:\Server\bin\mysql-8.0\bin\

Я запустил программу для обновления баз данных при переходе на новую версию MySQL:

./mysql_upgrade.exe -uroot

Но она мне сообщила:

>>
The mysql_upgrade client is now deprecated. The actions executed by the upgrade client are now done by the server.
To upgrade, please start the new MySQL binary with the older data directory. Repairing user tables is done automatically. Restart is not required after upgrade.
The upgrade process automatically starts on running a new MySQL binary with an older data directory. To avoid accidental upgrades, please use the --upgrade=NONE option with the MySQL binary. The option --upgrade=FORCE is also provided to run the server upgrade sequence on demand.
It may be possible that the server upgrade fails due to a number of reasons. In that case, the upgrade sequence will run again during the next MySQL server start. If the server upgrade fails repeatedly, the server can be started with the --upgrade=MINIMAL option to start the server without executing the upgrade sequence, thus allowing users to manually rectify the problem.

В этом сообщении сказано, что клиент mysql_upgrade теперь устарел. Его функции по обновлению выполняет сам сервер автоматически. Чтобы запретить обновление, нужно запустить с опцией —upgrade=NONE. Для запроса обновления, нужно запустить с опцией —upgrade=FORCE.

Я запустил следующим образом:

.\mysqld.exe --upgrade=FORCE

и проблема с чтением таблиц была решена.


Ошибка:

Системная ошибка 1067.

При попытке запуске MySQL или MariaDB может возникнуть ошибка:

Служба "MySQL" запускается..
Не удалось запустить службу "MySQL".

Системная ошибка.

Системная ошибка 1067.

Процесс был неожиданно завершен.

Решение:

Ошибка связана с тем, что не была выполнена инициализация базы данных — это необходимо сделать один раз после установке. В процессе инициализации создаётся необходимая для работы СУБД база данных, в которой храниться техническая информация (например, созданные пользователи, информация о таблицах и так далее).

Если у вас указанная выше ошибка возникла в MySQL, то выполните команды:

C:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root
C:\Server\bin\mysql-8.0\bin\mysqld --install
net start mysql

В этих командах исполнимые файлы MySQL расположены в папке C:\Server\bin\mysql-8.0\, расположение базы данных взято из файла my.cnf (переменная datadir).

а база данных должна быть создана в C:\Server\data\DB\data\. Если у вас другое расположение файлов, то отредактируйте предыдущие команды под ваши условия.

Если у вас указанная выше ошибка возникла в MariaDB, то выполните команды:

C:\Server\bin\mariadb\bin\mysql_install_db.exe --datadir=C:\Server\data\DB\data\
C:\Server\bin\mariadb\bin\mysqld --install
net start mysql

В этих командах исполнимые файлы MariaDB расположены в папке C:\Server\bin\mariadb, а база данных должна быть создана в C:\Server\data\DB\data\. Если у вас другое расположение файлов, то отредактируйте предыдущие команды под ваши условия.

Подробности смотрите в статье «Как установить MariaDB 7.4 в Windows».


Ошибка:

Ошибки «Can’t create test file c:\Server\data\DB\data\MiAl-PC.lower-test» и «Can’t change dir to ‘c:\Server\data\DB\data\’ (Errcode: 2 «No such file or directory»)»

Если во время инициализации или при запуске службы СУБД у вас возникли примерно следующие ошибки:

2019-07-07  5:40:58 0 [Note] C:\Server\bin\mariadb\bin\mysqld.exe (mysqld 10.4.6-MariaDB) starting as process 12084 ...
2019-07-07  5:40:58 0 [Warning] Can't create test file c:\Server\data\DB\data\MiAl-PC.lower-test
C:\Server\bin\mariadb\bin\mysqld.exe: Can't change dir to 'c:\Server\data\DB\data\' (Errcode: 2 "No such file or directory")
2019-07-07  5:40:58 0 [ERROR] Aborting

Решение:

Они означают, что отсутствует папка, в которой должны храниться базы данных. Для исправления достаточно создать необходимую папку.


Ошибка:

Ошибки InnoDB: Operating system error number 87 in a file operation и File .\ib_logfile101: ‘aio write’ return OS error 187.

Решение:

Если инициализация завершилась неудачей и в папке C:\Server\data\DB\data\ недостаёт файлов, а в логе ошибок C:\Server\data\DB\data\*.err вы видите примерно следующие записи:

[ERROR] InnoDB: Operating system error number 87 in a file operation
[ERROR] InnoDB: File .\ib_logfile101: 'aio write' return OS error 187.
[ERROR] InnoDB: Cannot continue operation

То для решения этой проблемы удалите всё содержимое папки C:\Server\data\DB\data\ и в файл my.ini добавьте ещё одну строчку:

innodb_flush_method=normal

Теперь инициализируйте MySQL ещё раз:

C:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root
C:\Server\bin\mysql-8.0\bin\mysqld --install
net start mysql

Ошибка:

Исправление MySQL после неудачной инициализации

Если вы что-то сделали не так при инициализации (например, указали не все рекомендуемые опции), то при последующей инициализации у вас тоже ничего не получится и в журнале ошибок будет примерно следующее:

[ERROR] [MY-010457] [Server] --initialize specified but the data directory has files in it. Aborting.
[ERROR] [MY-013236] [Server] Newly created data directory c:\Server\data\DB\data\ is unusable. You can safely remove it.
[ERROR] [MY-010119] [Server] Aborting

Решение:

В этом случае нужно остановить MySQL сервер:

net stop mysql
c:\Server\bin\mysql-8.0\bin\mysqld --remove

Очистите содержимое папки C:\Server\data\DB\data\ (удалите всё из неё).

Теперь инициализируйте MySQL ещё раз:

C:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root
C:\Server\bin\mysql-8.0\bin\mysqld --install
net start mysql

Ошибка:

Подскажите, пожалуйста, почему при инициализации MySQL 8.0.13 в каталоге C:\Server\data\DB\data\ ничего не появляется. Все файлы появляются в каталоге C:\Server\bin\mysql-8.0\data. В файле ошибок SVO5195.err (находится в C:\Server\bin\mysql-8.0\data) следующая информация:

2019-01-04T10:01:56.830374Z 0 [System] [MY-013169] [Server] C:\Server\bin\mysql-8.0\bin\mysqld.exe (mysqld 8.0.13) initializing of server in progress as process 8860
2019-01-04T10:02:02.311887Z 5 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
2019-01-04T10:02:05.511185Z 0 [System] [MY-013170] [Server] C:\Server\bin\mysql-8.0\bin\mysqld.exe (mysqld 8.0.13) initializing of server has completed

Решение:

Папка C:\Server\data\DB\data\ прописана в файле my.ini.

Получается причина ошибки только одна: вы или не создали файл my.ini, или создали его неправильно, или создали его не в том месте, или не записали туда директиву с C:\Server\data\DB\data\ — то есть что-то такое.

Ответ пользователя: Разобрался. Причина была в том, что я создавал файл my.ini.txt вместо my.ini. Не обратил внимания на отображение расширений в Проводники. Ошибка — глупая, но, думаю, сократит многим новоначальным время, если её указать.


Ошибка:

Я устанавливал себе MariaDB по вашей статье и возникла ошибка 1067. Что мне делать?

Решение:

Внимание: этот ответ подходит только для MariaDB 7.3 и более ранних версий!

Любые ошибки возникают только если хоть в чём-то отойти от мануала. Вы пропустили это:

Переместите папку C:\Server\bin\mariadb\data\ в папку C:\Server\data\DB\.


Ошибка:

Захожу http://localhost/phpmyadmin/index.php ввожу лог root а мне пишет ошибка — Невозможно подключиться к серверу MySQL.

Решение:

Такая ошибка возникает если не установлен или не запущен сервер MySQL. Внимательнее изучите инструкции https://hackware.ru/?p=21 и https://hackware.ru/?p=7033


Ошибка:

При установке Mysql когда я набираю в консоль mysql -u root, выдается ошибка ERROR 2003, can’t connect to mysql (10061), добавлю что открыл порт 3306 в брандмауре

Решение:

Это точно такая же ситуация как и в предыдущей ошибке: она возникает если не установлен или не запущен сервер MySQL. Внимательнее изучите инструкции https://hackware.ru/?p=21 и https://hackware.ru/?p=7033


Ошибка:

Эта версия mysqld.exe не совместима с Windows, работающей на этом компьютере

При попытке установить MySQL, либо при любой попытке запустить какой-либо исполнимый файл MySQL может возникнуть ошибка:

Эта версия mysqld.exe не совместима с Windows, работающей на этом компьютере. Проверьте сведения о системе, а затем обратитесь к издателю программного обеспечения.

Решение:

Причина ошибки в том, что делается попытка установить MySQL на 32-битный Windows. Архив «Windows (x86, 64-bit), ZIP Archive» содержит в себе только версию для 64-битных систем (хотя название файла название может сбить с толку).

В виде отдельного портативного архива MySQL больше недоступна для 32-битных систем.

Из этой ситуации есть два выхода:

  1. воспользоваться установщиком MySQL Installer (он на той же странице, где вы скачивали MySQL — большой такой банер). Как сказано в описании, там «все продукты MySQL» — что нужно и что не нужно, в том числе 32-битная версия. Установка проходит в графическом интерфейсе, настройка тоже выполняется из графического интерфейса и, как бы это не было странно, занимает больше времени, чем установка из портативного архива. Но, в принципе, ничего сложного;
  2. перейти на MariaDB. Это улучшенная версия MySQL, которая является бесплатной, но в ней собраны функции платных вариантов MySQL. Портативный архив с версией для 32-битных систем имеется. Сейчас много кто перешёл с MariaDB на MySQL (в том числе хостинги). У меня на компьютере тоже установлена именно MariaDB вместо MySQL. Инструкция по установке всего веб-сервера здесь: https://hackware.ru/?p=7033 (там точно такая же инструкция как и здесь, но вместо MySQL показана установка MariaDB). Что касается работы сайтов, то для них MySQL и MariaDB абсолютно равнозначны.

Ошибка:

После выполнения команд :

C:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root
C:\Server\bin\mysql-8.0\bin\mysqld --install
net start mysql

база данных в C:\Server\data\DB\data\ не создаётся.

Решение:

Выяснилось, что файл my.ini был создан как my.ini.txt. Также причинами может быть то, что файл my.ini не был создан вовсе или в него неправильно скопировали настройки.


Ошибка:

я попыталась выполнить «инициализацию и установку» через командную строку от имени администратора. Введя первую строку (C:\Server\bin\mysql-8.0\bin\mysqld —initialize-insecure —user=root) я получила ответ, что системе не удается найти путь.

Решение:

Неверно названы папки, либо при сооздании папок для сервера что-то сделано неправильно.


Ошибка:

Также попробовала из самой папки C:\Server\bin\mysql-8.0\bin\ открыть файл mysqld.exe (подумала,что именно его я открываю в командной строке), тут появилась системная ошибка, что «Не удается продолжить выполнение кода, поскольку система не обнаружила VCRUNTIME140_1.dll. Для устранения этой проблемы попробуйте переустановить программу.»

Решение:

Файл VCRUNTIME140_1.dll не найден потому что не установили Visual C++ Redistributable for Visual Studio 2015-2019.


Ошибка:

При попытке запустить MySQL данная служба не запускаются и появляются ошибки:

Служба "MySQL" запускается……..
Не удалось запустить службу "MySQL".

Для вызова дополнительной справки наберите NET HELPMSG 3523.

ошибка источник PHP-8.1.1

php[13708]

А также:

Не удалось запустить службу "MySQL".
Для вызова дополнительной справки наберите NET HELPMSG 3534.

Подроности причины ошибки:

PHP Warning: PHP Startup: Unable to load dynamic library 'PDO_OCI'
PHP Warning: PHP Startup: Unable to load dynamic library 'PDO_OCI' (tried: C:\Server\bin\PHP\ext\PDO_OCI (Не найден указанный модуль), C:\Server\bin\PHP\ext\php_PDO_OCI.dll (Не найден указанный модуль)) (C:\Server\bin\Apache24\bin\httpd.exe -d C:/Server/bin/Apache24)

Решение:

Причина ошибки в том, что активировано расширение pdo_oci. Отключите его в файле php.ini:

;extension=pdo_oci

Ошибка:

Deprecation Notice in .\vendor\twig\twig\src\Loader\FilesystemLoader.php#40
 realpath(): Passing null to parameter #1 ($path) of type string is deprecated

Backtrace

.\vendor\twig\twig\src\Loader\FilesystemLoader.php#40: realpath(NULL)
.\libraries\classes\Template.php#57: Twig\Loader\FilesystemLoader->__construct(string 'C:\\Server\\data\\htdocs\\-phpmyadmin\\\\templates\\')
.\libraries\classes\Theme.php#101: PhpMyAdmin\Template->__construct()
.\libraries\classes\Theme.php#174: PhpMyAdmin\Theme->__construct()
.\libraries\classes\ThemeManager.php#307: PhpMyAdmin\Theme::load(
string './themes/metro',
string 'C:\\Server\\data\\htdocs\\-phpmyadmin\\./themes/metro/',
)
.\libraries\classes\ThemeManager.php#79: PhpMyAdmin\ThemeManager->loadThemes()
.\libraries\classes\ThemeManager.php#121: PhpMyAdmin\ThemeManager->__construct()
.\libraries\classes\ThemeManager.php#385: PhpMyAdmin\ThemeManager::getInstance()
.\libraries\common.inc.php#240: PhpMyAdmin\ThemeManager::initializeTheme()
.\index.php#15: require_once(.\libraries\common.inc.php)
Deprecation Notice in .\vendor\twig\twig\src\Markup.php#35
 Return type of Twig\Markup::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Backtrace

.\vendor\composer\ClassLoader.php#444: include(.\vendor\twig\twig\src\Markup.php)
.\vendor\composer\ClassLoader.php#322: Composer\Autoload\includeFile(string 'C:\\Server\\data\\htdocs\\-phpmyadmin\\vendor\\composer/../twig/twig/src/Markup.php')
.\tmp\twig\46\46f1bfbf4328d3d22fddffb9178fdeb9868d0740e4cc8b5bbd6f2fcfb8e4523e.php#59: Composer\Autoload\ClassLoader->loadClass(string 'Twig\\Markup')
.\vendor\twig\twig\src\Template.php#405: __TwigTemplate_034511bee5325c368ee003e3d97d6cb47c3e1c94ebb527bcf0b76ba7818d1ac6->doDisplay(
array,
array,
)
.\vendor\twig\twig\src\Template.php#378: Twig\Template->displayWithErrorHandling(
array,
array,
)
.\vendor\twig\twig\src\Template.php#390: Twig\Template->display(array)
.\vendor\twig\twig\src\TemplateWrapper.php#45: Twig\Template->render(
array,
array,
)
.\libraries\classes\Template.php#132: Twig\TemplateWrapper->render(array)
.\libraries\classes\Header.php#714: PhpMyAdmin\Template->render(
string 'javascript/variables',
array,
)
.\libraries\classes\Header.php#193: PhpMyAdmin\Header->getVariablesForJavaScript()
.\libraries\classes\Header.php#142: PhpMyAdmin\Header->addDefaultScripts()
.\libraries\classes\Response.php#184: PhpMyAdmin\Header->__construct()
.\libraries\classes\Response.php#215: PhpMyAdmin\Response->__construct()
.\libraries\classes\Plugins\Auth\AuthenticationCookie.php#102: PhpMyAdmin\Response::getInstance()
.\libraries\classes\Plugins\AuthenticationPlugin.php#275: PhpMyAdmin\Plugins\Auth\AuthenticationCookie->showLoginForm()
.\libraries\common.inc.php#263: PhpMyAdmin\Plugins\AuthenticationPlugin->authenticate()
.\index.php#15: require_once(.\libraries\common.inc.php)
Deprecation Notice in .\vendor\twig\twig\src\Markup.php#40
 Return type of Twig\Markup::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Backtrace

.\vendor\composer\ClassLoader.php#444: include(.\vendor\twig\twig\src\Markup.php)
.\vendor\composer\ClassLoader.php#322: Composer\Autoload\includeFile(string 'C:\\Server\\data\\htdocs\\-phpmyadmin\\vendor\\composer/../twig/twig/src/Markup.php')
.\tmp\twig\46\46f1bfbf4328d3d22fddffb9178fdeb9868d0740e4cc8b5bbd6f2fcfb8e4523e.php#59: Composer\Autoload\ClassLoader->loadClass(string 'Twig\\Markup')
.\vendor\twig\twig\src\Template.php#405: __TwigTemplate_034511bee5325c368ee003e3d97d6cb47c3e1c94ebb527bcf0b76ba7818d1ac6->doDisplay(
array,
array,
)
.\vendor\twig\twig\src\Template.php#378: Twig\Template->displayWithErrorHandling(
array,
array,
)
.\vendor\twig\twig\src\Template.php#390: Twig\Template->display(array)
.\vendor\twig\twig\src\TemplateWrapper.php#45: Twig\Template->render(
array,
array,
)
.\libraries\classes\Template.php#132: Twig\TemplateWrapper->render(array)
.\libraries\classes\Header.php#714: PhpMyAdmin\Template->render(
string 'javascript/variables',
array,
)
.\libraries\classes\Header.php#193: PhpMyAdmin\Header->getVariablesForJavaScript()
.\libraries\classes\Header.php#142: PhpMyAdmin\Header->addDefaultScripts()
.\libraries\classes\Response.php#184: PhpMyAdmin\Header->__construct()
.\libraries\classes\Response.php#215: PhpMyAdmin\Response->__construct()
.\libraries\classes\Plugins\Auth\AuthenticationCookie.php#102: PhpMyAdmin\Response::getInstance()
.\libraries\classes\Plugins\AuthenticationPlugin.php#275: PhpMyAdmin\Plugins\Auth\AuthenticationCookie->showLoginForm()
.\libraries\common.inc.php#263: PhpMyAdmin\Plugins\AuthenticationPlugin->authenticate()
.\index.php#15: require_once(.\libraries\common.inc.php)

Решение:

О причинах и исправление ошибки смотрите в статье «Ошибка phpMyAdmin «Deprecation Notice in .\vendor\twig\twig\src\Loader\FilesystemLoader.php#40 realpath(): Passing null to parameter #1 ($path) of type string is deprecated» (РЕШЕНО)».


Ошибки phpMyAdmin в Windows

Ошибка:

1.

попытался установить пшагово по Вашей инструкции все программы для запуска phpMyAdminно выходит ошибка :

"Расширение mysqli не найдено. Пожалуйста, проверьте ваши настройки PHP. Смотрите [a@doc/html/faq.html#faqmysql@documentation]our documentation для дополнительной информации."

2.

При первоначальном запуске phpMyAdmin получила ошибку

The mysqli extension is missing. Please check your PHP configuration. See our documentation for more information.

Решение:

Возможные причины ошибки:

1.

В файле php.ini не раскомментирована строка:

extension=mysqli

2.

В файл httpd.conf не добавлена или записана с ошибкой строка:

PHPIniDir "C:/Server/bin/PHP"

3.

Файл php.ini имеет неверное имя, например, вы забыли его переименовать из php.ini-development.

В последних двух случаях настройки из файла php.ini вообще не используются, поскольку сам файл не может быть найден сервером. Чтобы это проверить, откройте файл i.php с функцией:

phpinfo ();

Найдите поле Loaded Configuration File, там должны быть перечислены загруженные конфигурационные файлы, например:

Loaded Configuration File	C:\Server\bin\PHP\php.ini

Если у вас так, как показано выше, значит файл php.ini используется, но расширение mysqli не активировано (см. 1й пункт выше).


Ошибка:

Добавляю http://localhost/phpmyadmin/setup/

вместо панели управления вижу код:

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Front controller for setup script
*
* @package PhpMyAdmin-Setup
* @license http://www.gnu.org/licenses/gpl.html GNU GPL 2.0
*/

/**
* Core libraries.
*/
require './lib/common.inc.php';

$page = filter_input(INPUT_GET, 'page');
$page = preg_replace('/[^a-z]/', '', $page);
if ($page === '') {
$page = 'index';
}
if (!file_exists("./setup/frames/$page.inc.php")) {
// it will happen only when entering URL by hand, we don't care for these cases
PMA_fatalError(__('Wrong GET file attribute value'));
}

и т. д.

Решение:

Сервер Apache работает без PHP

Ответ пользователя: Перезапустил и обновил браузер все получилось


Ошибка:

Столкнулся вот с какой проблемой — после расширения возможностей phpmyadmin и попытке войти под пользователем pma, выскакивает ошибка: #1045 Невозможно подключиться к серверу MySQL. Под root всё в порядке. Если знаете в чем проблема, подскажите пожалуйста как её исправить?! Хочется взглянуть на эти дополнительные возможности phpmyadmin)

Решение:

Вам не нужно заходить в phpMyAdmin от имени пользователя pma. Когда Вы всё настроили и зашли под рутом, то всё уже работает. Просто, на самом деле, в phpMyAdmin мало что меняется. Чтобы убедиться, что доп. возможности работают, кликните по какой-нибудь базе данных и посмотрите, есть ли у Вас в верхнем меню Дизайнер и Слежение. Если есть, значить всё работает.


Ошибка:

Apache, PHP и MySQL установились без проблем, но когда я дошла до 6-го пункта (phpMyAdmin), получила сообщение об ошибке:

Fatal error: Call to undefined function mb_detect_encoding() in C:\Server\data\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc on line 177.

Я читала комментарий выше об этой же ошибке, но у меня все нужные строки в php.ini раскомментированы, все делала четко по инструкции. Но все равно ошибка.

С чем это может быть связано и как исправить?

Решение:

перезагрузила — все работает)))


Ошибка:

У меня при установке phpMyAdmin возникла проблема:

Добавить новый сервер
Warning: Illegal	string	offset	'Servers/1/auth_type'	in	C:\Server\data\htdocs\pma\libraries\configWalidator.class.php	on	line 312
Warning: Illegal	string	offset	'Servers/1/auth_type'	in	C:\Server\data\htdocs\pma\libraries\configWalidator.class.php	on	line 319
Warning: Illegal	string	offset	'Servers/1/auth_type'	in	C:\Server\data\htdocs\pma\libraries\configWalidator.class.php	on	line 328
Warning: Illegal	string	offset	'Servers/1/auth_type'	in	C:\Server\data\htdocs\pma\libraries\configWalidator.class.php	on	line 336
Warning: Illegal string offset 'Servers/1/pmadb' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 371 Warning: Illegal string offset 'Servers/1/controluser' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 376 Warning: Illegal string offset 'Servers/1/controlpass' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 381 Warning: Illegal string offset 'Servers/1/connect_type' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 388 Warning: Illegal string offset 'Servers/1/hosf in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 389 Warning: Illegal string offset 'Servers/1/port' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 389 Warning: Illegal string offset 'Servers/1/socket' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 390 Warning: Illegal string offset 'Servers/1/controluser' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 390 Warning: Illegal string offset 'Servers/1/controlpass' in C:\Server\data\htdocs\pma\libraries\configWalidator.class.php on line 391
(&) Предупреждение_______________________________________________________________________________________________________
Данные формы содержат ошибки
Проверка данных на соответствие и возвращение в изначальное значение при наличии ошибки
Хранение конфигурации
► Не удалось соединиться с сервером базы данных! - mysqli_connect() expects parameter 5 to be long, string given
Игнорировать ошибки
Показать форму

Решение:

Если так, то это ошика исключительно версии phpMyAdmin 4.3.2. Тикет ошибки: http://sourceforge.net/p/phpmyadmin/bugs/4653/

Очевидные решения:

1) пользоваться phpMyAdmin из ветки 4.2,

2) подождать пока починят.


Ошибка:

Добрый день. Сделала все по инструкции, но при вводе http://localhost/phpmyadmin/ выдает такой текст «Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: mysqli, openssl«. 

Решение:

Возможные причины ошибки и способ решения смотрите в статье: Ошибка «Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: mysqli, openssl» (РЕШЕНО)


Вопросы и ответы по веб-серверу в Windows

Вопрос:

Я хочу потренироваться в администрировании сайта на WordPress или Я изучаю программирование PHP для WordPress, как мне установить эту CMS на свой локальный сервер в Windows?

Ответ:

Смотрите статью «Как установить WordPress в Windows».


Вопрос:

Могут ли мой веб-сервер взломать?

Ответ:

Да, по умолчанию безопасности веб-сервера не уделено никакого внимания — задача минимум, заставить его работать на Windows. Сразу после успешной установки и проверки, настоятельно рекомендуется перейти ко второй стадии: «Как защитить веб-сервер Apache от взлома в Windows».


Вопрос:

У меня есть уже готовый сайт всё настроил.как сделать чтоб его стало видно из интернета?

Ответ:

Здесь подробная инструкция: «Как веб-сервер на своём компьютере сделать доступным для других».


Вопрос:

Как настроить поддомены и виртуальные хосты?

Ответ:

Подробная инструкция «Настройка Apache в Windows» в разделе Подключение виртуальных хостов Apache в Windows.


Вопрос:

Скажите пожалуйста где вы взяли файл C:/Server/bin/PHP/php5apache2_4.dll

А то у меня ругается апач на его отсутствие

Ответ:

Этот файл с самого начала есть в архиве php-5.5.9-Win32-VC11-x64.zip , который скачиваю с официального сайта.

Если в Вашем архиве нет этого файла, скорее всего, Вы скачали или старую версию (5.4.*, 5.3.*) или Non-Thread Safe (NTS) версию.

Если файл C:/Server/bin/PHP/php5apache2_4.dll присутствует, но Apache выдаёт ошибку, значит проблема в настройке Apache.

Ссылки на «правильный» PHP:

64-бит: http://windows.php.net/downloads/releases/php-5.5.9-Win32-VC11-x64.zip

32-бит: http://windows.php.net/downloads/releases/php-5.5.9-Win32-VC11-x86.zip

(ссылки устарели)


Вопрос:

А что, если после установки MySQL 5.4.16 не появилось окошко настроек «MySQL Server Instance Configuration Wizard»?

Что делать? Как настраивать?

Ответ:

Значит вы скачали не установщик, а zip-архив. Лично мне ручная установка MySQL кажется более простой и гибкой. Как это сделать описано здесь.


Вопрос:

Как поменять пароль для MySQL?

Ответ:

Для задания нового пароля MySQL в командной строке:

c:\Server\bin\mysql-5.6\bin\mysql -u root mysql
mysql> update user set Password=PASSWORD('новый пароль') WHERE User='root';
mysql> exit
net stop mysql
net start mysql

Вопрос:

Как прописать переменные среды для MySQL в Windows?

Ответ:

Откройте «Мой компьютер» (у меня называется «Этот компьютер» — не суть). Там выберите «Свойства системы». Дальше выберите «Дополнительные параметры системы». В открывшемся окне на вкладке «Дополнительно» нажмите «Переменные среды». Там два окошечка, смотрите на то, которое называется «Системные переменные». Находите переменную «Path». Кликаете два раза на ней. В «Значение переменной» уже много-много чего понаписано. Добавляете туда (например, вставьте в самое начало) строку (если у вас MySQL):

C:\Server\bin\mysql-8.0\

Или (если у вас MariaDB):

C:\Server\bin\mariadb\

Нажмите везде ОК, чтобы закрылись все окна. Сразу, даже без перезагрузки можно работать в командной строке и вызывать MySQL как mysql — полный путь прописывать до бинарника не нужно.


Вопрос:

Посоветуйте хостинг

Ответ:

Хостинг, которым пользуется автор этих инструкций на протяжении 10 лет и где размещены этот и другие сайты с инструкциями: здесь. Для получения бесплатного месяца и других бонусов, указывайте промокод b33e0e2f


Совет:

Хотите навсегда забыть о всех проблемах с сервером? Хотите просто радоваться развитию вашего сайта и не думать ни о каких технических проблемах? Хотите получить надёжных друзей в виде высококвалифицированной и быстрой технической поддержки? Лучший хостинг от лидеров рынка по доступным ценам. Тарифы. Чтобы получить бесплатный месяц веб-хостинга, другие бонусы и подарки, указывайте промокод b33e0e2f

Связанные статьи:

  • Как установить веб-сервер Apache с PHP, MySQL и phpMyAdmin на Windows (94.2%)
  • Ошибка «Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: mysqli, openssl» (РЕШЕНО) (61.6%)
  • Установка Apache, PHP, MySQL и phpMyAdmin на Windows XP (59.5%)
  • Готовая сборка Apache для Windows XP (59.5%)
  • Как исправить «Configuration File (php.ini) Path» no value (57.7%)
  • Виртуальный хост Apache по умолчанию. _default_ и catch-all в Apache (RANDOM — 50.9%)

Понравилась статья? Поделить с друзьями:
  • Ошибка api мерседес актрос
  • Ошибка ah на холодильнике позис
  • Ошибка agp при запуске л2
  • Ошибка apk shadow fight 3
  • Ошибка ah на холодильнике pozis