apache2 не отрабатывает php

PHP не работает в Apache2 после обновления системы

Попробуйте диск на машине Windows.

Если у него такая же проблема в Windows, это не проблема ubuntu и, скорее всего, это ошибка аппаратного обеспечения или прошивки.

In в каком случае я пришлю его обратно.

21 ответ

/var/log/apache2/error.log должен показать строку, как показано ниже, если PHP был успешно загружен:

Обратите внимание на дату, если это что-то с 2009 года, вы что-то неправильно сконфигурировали.

[ f7] бесполезен, вам нужно использовать:

См. также инструкции по установке php.net для Apache 2.x.

У вас не должно быть необходимости добавлять что вручную, пакет libapache2-mod-php5 устанавливает /etc/apache2/mods-available/php5.conf, содержащий:

. Поскольку это противоречит, возможно, он не установлен с обновлением. Исправить это, а затем установить его еще раз:

Чтобы включить PHP, вам нужно запустить:

Перезапустить веб-сервер после:

проверить конфликтующие настройки в /etc/apache2. вы создали Apache из источника? Запустите sudo apache2ctl configtest, чтобы проверить вашу конфигурацию на наличие синтаксических ошибок. Откройте http: // localhost / server-info, чтобы проверить загруженную конфигурацию и модули. Для этого должен быть загружен модуль status. Если вы используете удаленный сервер, вам нужно добавить себя в список Allow from в /etc/apache2/mods-enabled/status.conf и перезапустить сервер после этого

/var/log/apache2/error.log должен показать строку, как показано ниже, если PHP был успешно загружен:

Обратите внимание на дату, если это что-то с 2009 года, вы что-то неправильно сконфигурировали.

AddType бесполезен, вам нужно использовать:

См. также инструкции по установке php.net для Apache 2.x.

У вас не должно быть необходимости добавлять что вручную, пакет libapache2-mod-php5 устанавливает /etc/apache2/mods-available/php5.conf, содержащий:

. Поскольку это противоречит, возможно, он не установлен с обновлением. Исправить это, а затем установить его еще раз:

sudo apt-get purge libapache2-mod-php5 sudo apt-get install libapache2-mod-php5

Источник

Apache2 не отрабатывает php

В директории с документами положил движок со скриптом install.php,
Веб дкументы работают нормально, когда ввожу в браузере http://localhost/index.html(здесь я специально вложил веб-док, чтоб проверить),

Я думаю что-то с настройками Apache и PHP.

Может у Вас есть какие-то мысли по этому поводу или кто-то сталкивался с этим,

ПОДСКАЖИТЕ ЧТО НЕ ТАК ДЕЛАЮ ИЛИ С ЧЕГО НАДО НАЧАТЬ?

Настроить я пытаюсь под ОС WindowsXP.

Rстати я здесь читал http://www.codenet.ru/webmast/apache/Apache-WindowsNT/ и пробовал сделать так как тут написано, но все же не работает.

PHP как прикручивал к аппачу? Как cgi? или как модуль?
У меня как модуль не заработал(ручки уже не те)

# Даём знать веб серверу, что у нас есть PHP интерпретатор
ScriptAlias /php4/ «D:/server/php4/»
Action application/x-httpd-php4 «/php4/php.exe»

PidFile logs/httpd.pid
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
HostnameLookups Off

# Порт, который слушает наш веб сервер
Listen 80

# Модули
LoadModule access_module modules/mod_access.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_module modules/mod_auth.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule imap_module modules/mod_imap.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule userdir_module modules/mod_userdir.so

# E-mail адрес админа веб сервера (поменяйте на свой)
ServerAdmin localhost@127.0.0.1

# Наш сервер:порт
ServerName localhost:80

# Папка, где будут храниться наши html, php и другие файлы
DocumentRoot «D:/server/www»

# Индексные файлы, через пробел
DirectoryIndex index.htm index.html index.shtm index.shtml index.php index.php3 index.php4

# Закрываем доступ к файлам конфигурации (.htaccess) и паролей (.htpasswd)

Order allow,deny
Deny from all

# База с типами файлов
TypesConfig conf/mime.types

# Файл отчёта с ошибками
ErrorLog logs/error.log

# Что записывать в файл отчёта, может принимать следующие значения:
# debug, info, notice, warn, error, crit, alert, emerg.
LogLevel warn

# Файл отчёта со списком всех доступов к веб серверу
CustomLog logs/access.log common

# Виртуальные папки
# Например:
# Alias /icons/ «d:/server/Apache2/icons/»
# Зайдя на http://localhost/icons/ мы увидем содержимое папки d:/server/Apache2/icons/
Alias /icons/ «D:/server/Apache2/icons/»

# Папка длс CGI, для PERL скриптов
ScriptAlias /cgi-bin/ «D:/server/cgi-bin/»

AllowOverride None
Options None
Order allow,deny
Allow from all

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

# Иконка для неизвестных форматов
DefaultIcon /icons/unknown.gif

# Если выводится содержимое какой-либо папки, cчитываются файлы описания:
ReadmeName README.html
HeaderName HEADER.html

*# HEADER* README* RCS CVS *,v *,t

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

# Наша кодировка
AddDefaultCharset WINDOWS-1251

Источник

Настройка HTTP/2 на примере Apache 2.4, PHP 7 и Ubuntu 18.04 LTS

Я понимаю, что, возможно, Апач на данный момент не является предпочтительным выбором для запуска на нём новых проектов, то тем не менее, он существует, здравствует и проекты на нём таки работают. Выбор на него может пасть по каким-то личным предпочтениям, по требованиям совместимости, или каким-то другим соображениям… не суть. В этой статье я хочу по пунктам описать, как настроить поддержку протокола HTTP/2 на веб-сервере Apache, потому что сам им пользуюсь и в такой статье нуждаюсь нуждался, и надеюсь, что кому-нибудь она тоже пригодится на практике.

Что такое HTTP/2? Как понятно из названия, это — вторая версия протокола HTTP. Подробнее о преимуществах Вы можете прочитать хотя бы на Википедии. От себя лишь скажу, что если Вы хоститесь не на шаред-хостинге, то поддерживать данный протокол — must have, как и, например, HTTPS. Да, для того, чтобы у Вас заработал HTTP/2, Вам потребуется полноценный доступ к консоли машины (пусть и к виртуальной) через ssh или каким-то иным образом, а также уже настроенный HTTPS (TLS/SSL). Ну что же, давайте приступим к делу.

Шаг первый. Обновление Apache

Протокол HTTP/2 поддерживается сервером Apache с версии 2.4.24, поэтому, если у Вас установлена более старая версия, — самое время её обновить. Но сначала проверим:

Эта команда выдаст что-то вроде такого:

В первой строчке указана версия сервера. Если она больше или равна 2.4.24, — можем смело переходить ко второму шагу. В противном случае, нужно обновить апач, актуальные версии которого Вы сможете найти в PPA известного (если Вам уже приходилось ставить что-то свеженькое на Debian/Ubuntu) разработчика — Ondřej Surý. PPA — это персональные пакеты, не включённые в официальные репозитории дистрибутивов. Поэтому, чтобы воспользоваться ими, сначала нужно научить систему, что и откуда брать:

Парень делает хорошее дело, и не против получить небольшой донат, о чём весьма недвусмысленно заявляет при подключении к его репам…

Далее, собственно, обновляем пакеты:

И снова проверяем версию Apache. Если всё прошло хорошо — на Вашем сервере будет стоять Apache, на котором можно настроить HTTP/2. Если всё пошло плохо — боюсь, это уже не тема данной статьи. А теперь переходим ко второму шагу.

Шаг второй. Использование FastCGI

Что такое FastCGI — лучше почитать, как я уже говорил, хотя бы в Википедии, потому что коротко не расскажешь. Вам нужно перейти на PHP, работающем в режиме FastCGI (php-fpm). Как это работает — дан хороший ответ на Тостере. Здесь же я в такие нюансы вдаваться не буду, а перейду сразу к установке:

После установки нам будет сказано буквально следующее: чтобы включить PHP 7.2 FPM в Apache2, сделайте:

Делаем. После этого нужно отключить mod_php, потому что вместо него у Вас теперь php-fpm.

Вообще говоря, версия PHP у Вас до этого могла стоять другая. Глянуть, что за модули у Вас установлены в системе можно в директории /etc/apache2/mods-available/, а какие активны в /etc/apache2/mods-enabled

Далее перезапускаем Apache

и переходим к третьему шагу.

Шаг третий. Переход с модуля Prefork на Event

Что такое MPM и в чём разница между prefork, event, worker — можно почитать вот в этой замечательной статье… но сейчас на самом деле важно знать только одно: «стандартный» prefork не очень совместим с HTTP/2, поэтому Вам нужно использовать более подходящий. Выключаем один, включаем другой, перезагружаем Apache.

Шаг четвёртый. Включаем HTTP/2

Либо в конфигурационный файл хоста, найти который можно в директории /etc/apache2/sites-enabled/, либо в конфиге самого сервера /etc/apache2/apache2.conf говорим, что нам нужна поддержка нового протокола:
Protocols h2 h2c http/1.1

Что действительно важно — это h2. Два других пункта — на Ваше усмотрение. h2c — это поддержка HTTP/2 через TCP (а не TLS). http/1.1 — поддержка старой версии HTTP.

Включаем модуль http2 и перезагружаем сервер:

Источник

Ошибки при настройке и установке Apache, PHP, MySQL/MariaDB, phpMyAdmin

Оглавление

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

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

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

Читайте также:  отчет по практике на примере школы

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

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

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

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

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

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

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

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

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

Ошибки Apache в Windows

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

Это предупреждение, а не ошибка. По идее, Apache должен всё равно работать. У вас http://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) из открывшегося списка выберете «Командная строка (администратор)»

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 действительно на свежую голову думается лучше а то после работы ничего не мог понять))

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

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

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

Ошибки PHP в Windows

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

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

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

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

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

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

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

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

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

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 отвечает строчка

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

Тем не менее, теоретически, ошибка может быть вызвана тем, что из-за неправильной конфигурации 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.

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

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

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

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

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

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

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

Причина ошибки в том, что 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 найдите строку

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

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

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

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

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

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

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

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

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

Читайте также:  пассивный доход миф или реальность

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

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

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

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

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

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

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

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

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

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

Ошибки MySQL/MariaDB в Windows

Found option without preceding group in config file

Ошибка в конфигурационном файле 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! (не получается прочитать из таблицы, возможно таблица повреждена), например:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ошибки «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»)»

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

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

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

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

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

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

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

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

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

Теперь инициализируйте 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) следующая информация:

Папка C:\Server\data\DB\data\ прописана в файле 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. Внимательнее изучите инструкции https://hackware.ru/?p=21 и https://hackware.ru/?p=7033

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

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

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

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

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

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

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

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

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

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

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

Ошибки phpMyAdmin в Windows

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

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

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

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

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

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

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

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

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

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

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

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

Вам не нужно заходить в 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 возникла проблема:

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«.

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

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

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

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

Читайте также:  Как узнать имя своего суженого во сне

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Comments

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

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

В файле php.ini должна быть раскомментирована строка

В качестве значения нужно указать абсолютный путь до папки ext, у меня эта папка находиться по пути C:\Server\bin\PHP\ext\, тогда моя строка выглядит так:

Также в этом же файле нужно расскомментировать строку:

Чтобы изменения вступили в силу, нужно перезапустить веб-сервер.

Если это уже сделано, но ошибка осталась, значит в главном конфигурационном файле Apache httpd.conf нужно добавить директиву PHPIniDir с указанием абсолютного пути до папки PHP, где размещён файл php.ini. Допустим этот файл размещён в папке C:/Server/bin/PHP, тогда для правильного подключения PHP к Apache нужно в файл httpd.conf добавить следующие строки:

Чтобы изменения вступили в силу, нужно перезапустить веб-сервер.

Если у вас другие пути до файлов и папок, то отредактируйте директивы соответствующим образом.

Добры день. После установки Apache запускаю
httpd, ошибка: Не возможно запустить это приложение на вашем ПК.
Нашел в интернет возможное решение: остановить службу web хостинга. Но такой службы нет.

Приветствую! Может быть у вас 32-битная Windows, а вы выбрали 64-битный Apache? Или Windows для ARM устройств?

Разрядность ОС и процессор 64 бит

Тем не менее, за идею спасибо! ) пробую поставить версию apache32. Модуль запускается. Ошибка уша, есть новая, но это уже ошибка Apache, а не Windows.

Если у кого-то возникла такая же проблема как у меня (прописаны данные my.ini в документе txt, а не ini), мне помогло решение, описанное в этой же статье чуть выше «Исправление MySQL после неудачной инициализации». Все заработало!

Остался только один вопрос: неудачно установленные файлы безболезненно удалятся?

Что делать с этой ошибкой

[ERROR] bin\mysqld: unknown option ‘—initialize-insecure’

На Виндовс 10 устанавливаю

Я специально скачал последнюю версию и выполнил пробную установку — всё прекрасно работает:

Ищите ошибки на своей стороне — в чём именно вы отклонились от инструкции.

хотя была установка апача по инструкции

Разве у вас не xampp? Если нет и действительно устанавливали по инструкции, значит остались хвосты от xampp, в том числе в переменных окружения.

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

Установила веб-сервер на win10 по инструкции, все работает, проверяла на wordpress. Теперь нужно запустить другое приложение на серввере (wordpress удален), но в логе apache такая ошибка: script ‘C:/Server/data/htdocs/index.php’ not found or unable to stat, referer: http://localhost/

Не могли бы вы подсказать. как решить проблему?

Здравствуйте! Вы пытаетесь открыть адрес http://localhost/index.php, но в папке C:/Server/data/htdocs/ отсутствует файл index.php. Попробуйте открыть адрес http://localhost/ и посмотрите, какие файлы или папки там находятся.

Дело в том, что я не пытаюсь открыть адрес http://localhost/index.php, я пытаюсь открыть адрес http://localhost/application

файл index.php в папке C:/Server/data/htdocs/ отсутсвует, в папке есть i.php, myphpadmin, application

Перейдите в папку application, то есть откройте ссылку http://localhost/application. И ещё смотрите 7. Использование сервера.

Установила веб-сервер на win10 по инструкции, все работает. Нужно запустить приложение (в папке приложения есть файл index.php) на сервере, но при вводе в адресную строку браузера «http://localhost/application/» или «http://localhost/application/" получаю ошибку 404.

В логах апача следующие записи:

C:\\Server\\data\\htdocs\\application\\class_db.php on line 94
[Sat Feb 29 22:37:51.375471 2020] [php7:warn] [pid 8864:tid 1244] [client ::1:53202] PHP Warning: db::query(): Couldn’t fetch mysqli in C:\\Server\\data\\htdocs\\application\\class_db.php on line 96
[Sat Feb 29 22:37:51.390974 2020] [php7:warn] [pid 8864:tid 1244] [client ::1:53202] PHP Warning: mysqli::close(): Couldn’t fetch mysqli in C:\\Server\\data\\htdocs\\application\\class_db.php on line 45

Подскажите, пожалуйста, как решить эту проблему?

Самое серьёзное в этих логах то, что не найден файл C:/Server/data/htdocs//cs_data.dat — он и вызывает ошибку 404.

Следующая серьёзная проблема — невозможность авторизации в СУБД — неправильное имя пользователя или пароль.

И последующие ошибки из-за предыдущих двух или просто PHP код слишком старый.

Подскажите, пожалуйста, как решить эту проблему?

Обратитесь к разработчику за внятной инструкцией как установить это приложение. Эта тема вам ничем больше не поможет — здесь обсуждаем проблемы с веб-сервером, а не с кривыми приложениями.

Не запускается служба mysql… Перепробовал и перепрочитал все что можно… вот что пишет в логе

Системная ошибка 1067 решилась только добавлением в my.ini строки:

на поиски этого решения ушло два дня, думаю многим это будет полезно

Будьте осторожны с этой настройкой, поскольку она разрешает подключение к СБУД без пароля. Обсуждение этого вопроса здесь.

Проблема с установкой MySQL. При вводе команд

служба не стартуется. Выяснилось что инициализация проходит некорректно. В логах MySQL приведена следующая информация:

насколько я понял он не видит директорию с данными. Содержимое файла my.ini:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
datadir=»c:/Server/data/DB/data/»
default_authentication_plugin=mysql_native_password

Возможных причин может быть две:

1. Всё-таки ошибка в пути до папки, чтобы проверить, в командной строке выполните команду

Если что-то покажет в этой папке, значит всё нормально.

2. Не используется файл my.ini. О такой ошибке часто писали, в результате оказывалось, что файл назван my.ini.txt — проверьте это — если будет выведена ошибка, значит файл my.ini как-то неправильно назван.:

Ещё попробуйте запустить такую команду, возможно, там будет показан путь до предполагаемой папки с данными:

c:\Server\data\DB\data>dir
Том в устройстве C имеет метку Acer
Серийный номер тома: 90A1-76B7

Содержимое папки c:\Server\data\DB\data

c:\Server\data\DB\data>dir C:\Server\bin\mysql-8.0\my.ini
Том в устройстве C имеет метку Acer
Серийный номер тома: 90A1-76B7

Содержимое папки C:\Server\bin\mysql-8.0

22.03.2020 13:39 149 my.ini
1 файлов 149 байт
0 папок 3 521 236 992 байт свободно

c:\Server\data\DB\data>
c:\Server\data\DB\data>cd c:/Server/bin/mysql-8.0/bin/

вроде бы все правильно показывается, а инициализация все равно не происходит… =(

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

Для инициализации можно указать любую директорию. Просто для теста в корне диска c: создайте папку test, то есть получается путь до папки c:\test и попробуйте инициализировать:

У меня уже служба MySQL запущена, но инициализация в другой папке всё равно проходит нормально.

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

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

Ну а так, судя по логам, не найдено расширение pdo_sqlite. Всё остальное в этой части логов не является фатальным.

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

Если у вас другие вопросы, вроде «где файл php.ini» или «pdo_sqlite уже включено, но всё равно не работает» и т. п., то адресуйте их форуму по xampp. Я с этой сборкой не работаю и ничем помочь с ней не могу.

Источник

Образовательный портал