локальный сервер mysql


Содержание материала:

Установка программы-сервера MySQL…

Итак, начнем по порядку. Для экспериментов нам понадобится программа-сервер. Я остановил свой выбор на MySQL. Бесплатная, распространенная, удобная, отлаженная и просто любимая многими программистами ��

Установка программы-сервера MySQL на локальный компьютер (у меня ОС windows 8.1)

Дистрибутив, в соответствии с разрядностью своей системы, (mysql-5.5.23-winx64.msi) скачал с официального русского сайта mysql.ru в разделе download. На момент написания статьи там доступна и 6 версия, но, насколько, я понял, она ещё не стабильна и находится в стадии тестирования.

Установка традиционная – визуальная, несколько раз “Next” и программа готова работать. Программа предложила директорию “C:\Program Files\MySQL\MySQL Server 5.5\” и я не стал ей отказывать.

По окончании установки была возможность запустить MySQL Server Instance Configuration Wizard, аналогичным образом не стал отказывать программе ��

Я выбрал первый вариант, так как устанавливаю на локальный компьютер и буду экспериментировать с программой-сервером как разработчик.

Здесь аналогично – выбрал первый вариант, так как моя цель – различные эксперименты с программой-сервером, без ограничений.

Здесь у меня возражений нет, просто нажимаю “Next”

Здесь выберем первый вариант, так как для первых экспериментов достаточно будет до 20 одновременных подключений. Впоследствии, это можно поменять.

Программа предлагает порт 3306 – соглашаемся, а также на опцию Enable Strict Mode;

Выбираю второй вариант, потому что живу в России ��

Выбираем инсталляцию как сервиса windows, а также автоматический запуск, потому что нам нужна постоянная работа программы. Да и просто, это удобно, когда не нужно по 100 раз запускать её в ручную на период экспериментов с программой-сервером MySQL. Вторую “галку” ставим для того, чтобы вызывать программу управления и другие EXE из командной строки, для тех, кто к ней привык.

По умолчанию MySQL создает “суперпользователя” под именем root и в этом диалоговом окне предлагается его заполнить. Я проставил стандартный пароль для баз данных из учебников “masterkey” без кавычек;

Для безопасности “галки” для удаленных машин и анонимных пользователей, я пока ставить не стал. Это можно будет проставить позже;

Далее система работает самостоятельно, после нажатия на Execute;

Если все нормально – сервер запустится в виде службы под именем MySQL, и его можно будет увидеть в списке служб;

Устанавливаем Max_Allowed_Packet в my.ini

Это такая штука, которая обязательно Вам встретится при разработке, поэтому советую – поправить её сразу. Размер пересылаемых пакетов – по умолчанию стоит 1 Мб. А когда Вы будете делать элементарный бэкап (дамп) своей базы, то соответственно, увидите ошибку MySQL has gone away .

У меня дамп одной из баз данных был равен примерно 18 мб., а max_allowed_packet по умолчанию при установке равен 1 МБ, соотвественно, при попытке его загрузить обратно в базу выскакивала ошибка MySQL has goneAway.

Чтобы этого не происходило – зайдите в WIndows под администратором,

Если учетная запись администратора не включена, то включить её можно вот так…

Win+X –> Командная строка ( администратор )

Для включения встроенной учетной записи Администратор в русской версии Windows используйте команду

net user Администратор /active:yes

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

net user Administrator /active:yes

C:\Program Files\MySQL\MySQL Server 5.5\my.ini

-найдите в нем секцию

-и допишите туда max_allowed_packet=1024M

1024M это максимально допустимое значение этого параметра в MySQL, можете поставить меньше, в зависимости от своей задачи.

Что дальше?
Создадим базу данных в данной программе-сервере и первую таблицу;

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

Локальный сервер mysql

Как сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7-2008r2

Всем привет сегодня расскажу как сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7/Windows server 2008r2.

Список программ.

httpd-2.2.25-win32-x86-openssl-0.9.8y.msi
mysql-5.5.9-win32.msi
php-5.3.5-Win32-VC6-x86.msi
дополнительно \ imageMagick \ ImageMagick-6.7.0-6-Q16-windows-dll.exe
дополнительно \ imageMagick \ php_imagick_dyn-Q16.dll
дополнительно \ pspad \ pspad454inst_en.exe
дополнительно \ pspad \ ru_dic.cab
дополнительно \ HeidiSQL_6.0_Setup.exe
дополнительно \ phpMyAdmin-3.5.8.2-all-languages.7z

Все программы бесплатны и скачаны с официальных сайтов:

Не скачивайте сверхновые программы с пометкой Альфа (Alpha), Бета (Beta) и т.д. — это не стабильные версии которые могут содержать ошибки. Скачивайте только стабильные (Stable) версии.

http://httpd.apache.org/download.cgi
http://windows.php.net/download/ (скачиваем «installer», только «VC6 x86 Thread Safe». VC9 — устанавливать с Apache нельзя)
http://www.mysql.com/downloads/mysql/ (нажать «Looking for previous GA versions?», «essential» = необходимый минимум)
http://www.imagemagick.org/script/index.php

программы для работы с базой данных MySql:

http://www.heidisql.com/download.php
http://www.devart.com/ru/dbforge/
http://www.phpmyadmin.net/home_page/downloads.php

Принцип работы сервера:

Сервер — это компьютер на котором лежат файлы сайта. На нем запущена и постоянно работает специальная программа Apache. Если через браузер обратиться к этому серверу (послать запрос на 80 порт), Apache выдаст обратно HTML и графические файлы лежащие на сервере. Браузер получив обратно эту информацию сформирует из них на экране привычную нам страницу сайта.
Это принцип.

Для надежности и большей совместимости реальные сервера у хостинговых компаний обычно делают на связках Unix + Apache (самая распространенная в мире связка) или на Windows Server 200X + Internet Information Server (IIS). Для экспериментов и тестирования сайтов вполне подойдет Windows 7, Vista или XP + Apache.

Ниже рассказывается как создать локальный (не видимый в интернете) виртуальный сервер для тестирования сайтов, скриптов и т.д.

Настроить видимость в интернете, т.е. сделать свой реальный хостинг можно, но опасно, ибо велик шанс, что будет много «дыр» для взлома.
* посчитайте сколько стоит за год выделенный IP адрес
* посчитайте сколько стоит за год электричество для постоянно работающего компьютера
* посчитайте стоимость замены выходящего из строя железа (год в включеном состоянии не каждая железка выдержит)
* уверены, что интернет у Вас никогда не пропадает и скорости отдачи хватит для всех посетителей?
* как будете делать резервные копии сервера, где хранить? При сбое или взломе как быстро Вы сможете все восстановить?
Ответив на вопросы выше подумайте, может надежнее, проще и дешевле купить хостинг и не мучиться.

1) Cоздаем папки

c:/work/test.ru/www/
c:/work/bebebe/www/
(желательно сразу залить туда предлагаемые PHP файлы, для тестирования хостинга)

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

Общая папка для всех виртуальных сайтов:
c:/work/
Название может быть любое, не обязательно work.
Место положение любое, не обязательно диск c:

Папки конкретных двух сайтов:
c:/work/test.ru/
c:/work/bebebe/
Название может быть любое. На этом уровне располагают файлы сайта которые не видны в интернете, например служебные файлы, пароли, логи, статистику сервера и т.д.

Видны в браузере:
c:/work/test.ru/www/
c:/work/bebebe/www/
Здесь размещаются непосредственно файлы сайта (картинки, HTML, файлы для скачивания и т.д.) Грубо говоря, если в браузере набрать test.ru, то будет «видно» содержимое именно этой папки. Поэтому в браузере невозможно отобразить родительскую папку c:/work/test.ru/ и c:/work/ и диск c:/ то же. ��

папка
c:/work/_/sendmail/
не обязательна. Нужна для работы «заглушки» отправки e-mail.

2) Устанавливаем Apache

Apache — это программа, которая принимает запросы от браузера (Internet Explorer, FireFox, Opera . ) и выдает ему обратно HTML, картинки, результаты работы скриптов и т.д. (выдает страницы сайта). Запущена она один раз и работает постоянно. Значок запущенной программы будет внизу, справа экрана.

Настройки Apache в файле:
c://Program Files (x86)/Apache Software Foundation/Apache2.2/conf/httpd.conf
Для применения изменений в этом файле нужно перезагружать Apache.

———-
Чтобы Apache принимал запросы только с локального компьютера, указываем его неизменный IP адрес и порт: 127.0.0.1:80
Т.е. скачать или запустить что-то на вашем хостинге можете только Вы.

Заменяем
Listen 80
на
Listen 127.0.0.1:80

———-
Модуль mod_rewrite.so нужен для реализации человеку понятных адресов (ЧПУ)
Применяется для создания ссылок на страницы вида: test.ru/news/2010/03/
Убрать знак комментария «#»:
LoadModule rewrite_module modules/mod_rewrite.so

———-
Что бы не было предупреждения в логах Apache убрать знак комментария «#»:
ServerName localhost:80

———-
Для того, что бы можно было использовать файлы .htaccess
После кода:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be «All», «None», or any combination of the keywords:
# Options FileInfo AuthConfig Limit

Изменяем
AllowOverride None
на
AllowOverride All

———-
При указании в адресной строке браузера папки на сервере, сервер автоматически будет искать и запускать указанные здесь файлы

Заменяем
DirectoryIndex index.html
на
DirectoryIndex index.html index.htm index.php

———-
Указываем путь файла ошибок в удобное нам место:
ErrorLog «c:/work/_/apache_error.log»

———-
Даем доступ к папке «work» и создаем настройки.
После кода:

AllowOverride None
Options None
Order allow,deny
Allow from all

AllowOverride All
Options Indexes FollowSymLinks Includes
Order allow,deny
Allow from all

Indexes — возвращает клиенту листинг каталога, если в нем нет индексных файлов
FollowSymLinks — Позволяет использовать символические ссылки (нужно для работы mod_rewrite)
Includes — Разрешает выполнение SSI директив в файлах

———-
Указываем расширения файлов для SSI
После кода :

# To parse .shtml files for server-side includes (SSI):
# (You will also need to add «Includes» to the «Options» directive.)

AddType text/html .shtml .html. .htm
AddOutputFilter INCLUDES .shtml .html .htm

———-
Присоединение к основному конфигурационному файлу, файл httpd-vhosts.conf
Тогда при запуске Apache прочитает оба файла.
Убрать знак комментария «#»:
Include conf/extra/httpd-vhosts.conf

———-
Далее изменяем в файле
C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf\extra\httpd-vhosts.conf

Даем понять Apache, что:
Есть виртуальный хост, т.е. сайт.
Его файлы лежат здесь «DocumentRoot»
Показывать именно этот сайт если запрашивают домен «ServerName» или «ServerAlias»
Логи писать сюда «ErrorLog» и сюда «CustomLog»

Для этого удаляем старые записи

.

и добавляем новые:

DocumentRoot c:/work/test.ru/www
ServerName test.ru
ServerAlias www.test.ru
ErrorLog c:/work/test.ru/error.log
CustomLog c:/work/test.ru/access.log common

DocumentRoot c:/work/bebebe/www
ServerName bebebe
ErrorLog c:/work/bebebe/error.log
CustomLog c:/work/bebebe/access.log common

3) Устанавливаем PHP

PHP — это популярный язык программирования применяемый для создания сайтов.

В установке выбираем все модули, кроме этих:
Oracle (10)
PDO — Oracle10g
PDO — Oracle8i\Oracle9i
PDO — SQLite (External Driver)
Pspell
Sybase
т.к. для них нет файлов-билиотек (.dll) и это приведет к ошибке.

Настройки PHP в файле:
C:\Program Files (x86)\PHP\php.ini

позволит выполнять код PHP в контейнере
по умолчанию кодом PHP считается все в контейнере
short_open_tag = On

максимальное время выполнения программы в секундах
(на реальных хостингах обычно 30)
max_execution_time = 3600

максимальное время получения данных (например загрузки файла) в секундах
(на реальных хостингах обычно 60)
max_input_time = 3600

максимальный объем памяти который может занять Ваш PHP скрипт
(на реальных хостингах обычно 32М)
memory_limit = 256M

выводить на экран ошибки PHP
(на реальных хостингах всегда OFF в целях безопасности)
display_errors = On

выводить на экран ошибки в момент запуска PHP
display_startup_errors = On

если надо подкрасить все ошибки красным разкомментируем эти строки:
error_prepend_string = » »
error_append_string = » «

максимальный объем, который можно передать PHP скрипту методом POST
(на реальных хостингах обычно 4М)
post_max_size = 1000M

максимальный объем файла, который можно передать PHP скрипту
(на реальных хостингах обычно 2М)
upload_max_filesize = 1000M

Заменяем пути папок для временных файлов, сессий и файла ошибок:
upload_tmp_dir=»C:\work\_\php_temp»
session.save_path=»C:\work\_\php_session»
error_log=»C:\work\_\php-errors.log»

Требуется установка времени сервера иначе PHP постоянно будет выдавать предупреждения
изменяем
;date.timezone =
например, на
date.timezone =’Europe/Moscow’

Что бы работала «заглушка» для отправки e-mail после строки
;sendmail_path =
заменяем
sendmail_path = php.exe c:\work\_\sendmail\sendmail.php
тогда при выполнении функции PHP — mail(); письмо будет сохранено в виде файла в папке
c:\work\_\sendmail\
(куда сохранять письма прописано в самом скрипте sendmail.php)

——-
ВНИМАНИЕ:
инсталлятор PHP может не прописывать в файле httpd.conf пути к PHP:

#BEGIN PHP INSTALLER EDITS — REMOVE ONLY ON UNINSTALL
PHPIniDir «»
LoadModule php5_module «php5apache2_2.dll»
#END PHP INSTALLER EDITS — REMOVE ONLY ON UNINSTALL

#BEGIN PHP INSTALLER EDITS — REMOVE ONLY ON UNINSTALL
PHPIniDir «C:/Program Files (x86)/PHP»
LoadModule php5_module «C:/Program Files (x86)/PHP/php5apache2_2.dll»
#END PHP INSTALLER EDITS — REMOVE ONLY ON UNINSTALL

——-
ВНИМАНИЕ:
при повторном запуске инсталлятора PHP будет снова изменен файл httpd.conf
причем все старые пути к PHP будут закомментированы знаком #,
а новые не пропишутся (см. выше).
В результате Apache запустится без PHP и при попытке выполнить скрипт PHP
например так: http://test.php/index.php будет предложено скачать файл!
Пропишите в файл httpd.conf пути к PHP (см.выше) и все заработает.

Если Apache не запустился то закоментируйте следующие библиотеки в php.ini
;extension=php_pdo_pgsql.dll
;extension=php_pgsql.dll
;extension=php_sybase_ct.dll
;extension=php_oci8_11g.dll
;extension=php_oci8.dll
;extension=php_intl.dll
_________________________________________________________________________________

4) Устанавливаем ImageMagick

ImageMagick — программа для работы с изображениями. Схожа со стандартной библиотекой PHP GD2, но более профессиональная и главное выдает картинки с лучшим качеством, что заметно не вооруженным глазом (после обработки GD2 картинки слегка мутноваты и это не лечится).

После установки самой программы, копируем в папку с модулями, модуль для ImageMagick
C:/Program Files (x86)/PHP/ext/php_imagick_dyn-Q16.dll
В конце php.ini добавляем строчку подключения модуля:
extension=php_imagick_dyn-Q16.dll
Может требовать перезагрузки компьютера (перезагрузим позже)

5) Устанавливаем MySQL

MySQL — это база данных. Т.к. далеко не всю информацию удобно хранить в файлах, наличие базы данных очень часто является необходимостью. При установке обязательно поставьте галочку Include Bin Directory in Windows PATH иначе PHP не сможет найти нужные ему файлы mysql.

(в тестовых файлах PHP, с сайта sysbox.ru, для подключения к базе данных указаны
логин: root
пароль: root
изменить их можно в файле config.php)

Кодировки MySQL это отдельный рассказ, т.к. нюансов множество.
При установке MySQL желательно указать именно UTF-8 (инсталлятор так и рекомендует сделать). Это универсальная, многобайтовая кодировка.

Обычно возникает путаница с кодировками: ошибки при записи в базу данных, читаются иероглифы, появляются вопросики вместо букв и т.д. MySql имеет массу настроек кодировок. Важные для PHP:

character_set_client = кодировка данных отправляемых от PHP
character_set_connection = кодировка, в которую преобразуется информация пришедшая от PHP, перед выполнением запроса на сервере
character_set_results = кодировка данных отправляемых к PHP
collation_connection = кодировка в которой производится сопоставление в базе данных. Используется для сортировки и выборки.

В помощь: если база данных в UTF-8, а на сайте работаете в кодировке windows-1251, то после подключения к базе данных надо выполнить запрос:
SET NAMES cp1251
который равносилен этим трём:
SET character_set_client = cp1251
SET character_set_results = cp1251
SET character_set_connection = cp1251

Настройки MySQL лежат в файле:
c:\Program Files (x86)\MySQL\MySQL Server 5.1\my.ini

Если сам MySQL использует UTF-8 по умолчанию, то лезть в файл настроек как правило не нужно и все проблемы с кодировками можно решить с помощью MySQL менеджера (например программы HeidiSQL) и запросов SQL.

6) Настройка Windows

Что бы при наборе в браузере определенных сайтов браузер искал их не в интернете, а на локальном компьютере,
в файл:
C:\WINDOWS\system32\drivers\etc\hosts
добавляем:

127.0.0.1 localhost
127.0.0.1 test.ru
127.0.0.1 www.test.ru
127.0.0.1 bebebe

Запись «127.0.0.1 localhost» нужна для того, что бы можно было подключаться к MySQL из PHP указывая не IP адрес 127.0.0.1, а зарезервированное имя «localhost». Так правильнее и «localhost» часто используется на реальных хостингах.

7) Перезапуск Apache

Для Windows Vista и Windows7:
остановить и снова запустить Apache

Для Windows XP:
сразу перезапустить Apache не получится — сначала надо обязательно перезагрузить компьютер
(перезагрузка закрепляет значения, автоматически сделанные Apache, PHP и MySQL, в переменной Windows — PATH)

______________________________________________________________________________
Настройка программы phpMyAdmin

phpMyAdmin — это программа для администрирования базы данных MySQL.
Написана на языке PHP, работает через браузер.
Примечательна тем, что на большинстве реальных хостингах она установлена и рекомендуется для работы с базой данных.

Распаковываем все файлы в какую-нибудь папку на сайте, например в «c:/work/bebebe/www/pma/»
В корне переименовать файл
config.sample.inc.php
в
config.inc.php
и редактируем всего одну строчку (надо указать любой код, например «xxx»):
$cfg[‘blowfish_secret’]=’xxx’;
После чего запускаем phpMyAdmin, набрав в браузере:
bebebe/pma
Вводим логин и пароль которые указывали при установке MySQL

Остальные настройки менять НЕ нужно и по умолчанию они должны содержать:
$cfg[‘Servers’][$i][‘verbose’] = »;
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
$cfg[‘Servers’][$i][‘port’] = »;
$cfg[‘Servers’][$i][‘socket’] = »;
$cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;
$cfg[‘Servers’][$i][‘nopassword’] = true;

Если в файле
C:\WINDOWS\system32\drivers\etc\hosts
нет строчки
127.0.0.1 localhost
то phpMyAdmin может не работать «зависать» и выдавать ошибки, например:
#2002 — Сервер не отвечает (либо сокет локального MySQL-сервера некорректно настроен)
Эти зависания можно вылечить изменив в настройке phpMyAdmin:
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
на
$cfg[‘Servers’][$i][‘host’] = ‘127.0.0.1’;
но правильнее внести строчку
127.0.0.1 localhost
в файл hosts, т.к. на реальных хостингах, в скриптах PHP при подключении к MySQL указывается именно «localhost», а не конкретные IP адреса.

Вот так вот просто сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7/2008r2. Тоже самое можно сделать с помощью Denwer.

Установка и отладка веб-сервера для сайта в UBUNTU

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

LAMP – что это

LAMP – это сочетание технологий Linux, Apache, MySQL, PHP, которые используются программистами для запуска интернет ресурсов, как личной разработки, так и проектов, функционирующих на известных CMS.

Как установить APACHE

Apache представляет собой веб-сервер с открытым исходным кодом . Его функционирование может быть описано следующим образом: На любой из поступающих запросов, данный сервер выдает ответ соответствующий запросу.

Другими словами говоря, обратившись к человеку с каким-то вопросом, он может, как дать ответ, так и нет. Однако, задав человеку вопрос, на который он дать ответ не в силах, прозвучит ответ: не знаю. Аналогичным образом функционирует и Apache, например, сервер покажет 404 ошибку, если вы обращаетесь к несуществующей странице.

Установка Apache производится посредством команды через терминал:

sudo apt-get install apache2

Если вы совсем новичок в Linux/Ubuntu, вы можете пройти курс Linux/GIT и вы получите базовые знания по командам Linux, а также научитесь работать с контролем версий кода GIT и сервисом BitBucket.

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

Как установить PHP

Пользователь, который хочет, установить PHP на свой сервер, должен ввести следующую команду:

sudo apt-get install php5 php5-common libapache2-mod-php5 php5-cli php5-cgi php5-mysql

По завершению выполнения команды, необходимо ввести в терминале php -v . Благодаря этой команде должна будет отобразиться текущая версия php:

Если пользователь наблюдает это в своем терминале, то это говорит о том, что php установлен правильно и готов к работе.

Кстати, если вы плохо знакомы с языком программирования PHP, посмотрите эти уроки PHP для начинающих с нуля — это самые основы PHP программирования.

Как установить MYSQL

MySQL представляет собой базу данных, предусмотренную для хранения информации веб-ресурса. SQL является языком запросов, которые производятся непосредственно к БД MySQL.

Чтобы произвести установку MySQL пользователю необходимо ввести следующую команду:

sudo apt-get install mysql-server mysql-client

В ходе установки БД нужно будет придумать логин и ввести пароль, для локального пользователя можно задать логин root в БД MySQL. После, потребуется повторное введение данного пароля, поэтому придуманный пароль лучше записать на листок бумаги или в блокнот.

Чтобы пользователю было комфортней работать с БД MySQL следует произвести установку графического веб-клиента — PhpMyAdmin. Для этого вводят следующую команду:

Топ-пост этого месяца:  Поиск в MySQL – как найти потерянную строку из таблицы

sudo apt-get install phpmyadmin

В ходе установки данного клиента пользователь может произвести отладку связки веб-сервера и phpmyadmin в автоматическом режиме.

По завершению установки и отладки phpmyadmin следует произвести проверку функциональности. Сделать это можно при помощи введения ip адреса веб-сервера, но при этом необходимо и в конце дописать phpmyadmin через слеш.

Если вы все сделали правильно, вы должны увидеть страницу авторизации phpmyadmin:

Заполните форму авторизации и введите логин и пароль, которые вы задавали на предыдущем этапе.

Кстати, если вы хотите научиться работать с базой данных MySQL (MariaDB), составлять SQL-запросы — посмотрите уроки MySQL для начинающих в курсе программирования PHP/MySQL.

Как настроить конфиг APACHE

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

На первом этапе отладки конфига пользователь должен создать каталог для своего интернет проекта на сервере. Сделать это можно перейдя в основной каталог apache:

Затем, создайте каталог для вашего сайта командой:

sudo mkdir superdomain

Чтобы пользователь мог корректировать каталог, следует поменять имя владельца каталога с пользователя root на свое имя пользователя или, предпочтительно, на имя пользователя для apache.

Выполнить это можно посредством введения в терминале следующих команд:

Затем введите команду:

sudo chown -R user:user superdomain

Теперь перейдите в ваш каталог superdomain:

После ввода команды выше, вы откроете текстовый редактор nano. Давайте напишем простой PHP-скрипт:

Для того, чтобы сохранить изменения в редакторе nano, нажмите сочетание клавиш ctr+x и букву y, после этого нажмите на клавишу enter.

Далее рассмотрим, как отладить конфиг apache2. Произвести настройку можно посредством введения команды:

sudo nano /etc/apache2/sites-available/superdomain.com.conf

и вставить текст следующего содержания:

На следующем этапе пользователю необходимо выполнить нажатие сочетание клавиш ctr+x и букву y, а после нажать enter.

После этого следует перейти в каталог apache, посредством введения следующей команды:

и ввести еще одну команду:

sudo a2ensite superdomain.com.conf

В случае правильного введения команд на экране отобразится следующее:

Чтобы запустить новый конфиг apache на веб-ресурсе необходимо ввести команду:

service apache2 reload

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

На последнем этапе запуска веб-ресурса на своем локальном домене пользователю необходимо в документе hosts ввести ip-адрес сервера и указать имя своего локального домена:

Сам файл hosts в Linux находится в

в Windows вы его сможете найти по такому адресу:

Все готово! Теперь осталось лишь сохранить файл hosts, и в браузере указать имя своего локального домена superdomain.com.

В результате на экране должно будет отобразиться результат выполнения файла index.php.

Выводы

Умение устанавливать и настраивать веб-сервер для сайта вам очень пригодится как в операционной системе Ubuntu, так и в Windows.

О том как устанавливать и настраивать локальный сервер для сайта всего несколькими кликами мыши в Windows 10, вы можете посмотреть видеоуроки PHP в курсе PHP/MySQL.

PHP MySQL. Подключение к базе данных MySQL

Главное меню » Базы данных » База данных MySQL » PHP MySQL. Подключение к базе данных MySQL

Перед подключением к базе данных MySQL необходимо указать следующую информацию:

  • Имя источника данных MySQL или DSN: указывает адрес сервера базы данных MySQL. Вы можете использовать IP-адрес или имя сервера, например, 127.0.0.1 или localhost
  • Имя базы данных MySQL: указывает имя базы данных, к которой вы хотите подключиться.
  • Имя пользователя и пароль: укажите имя пользователя и пароль пользователя MySQL, который вы используете для подключения к серверу базы данных MySQL. Учетная запись должна иметь достаточные привилегии для доступа к базе данных, указанной выше.

Мы будем использовать:

  • Локальный сервер базы данных MySQL, так что DSN есть localhost.
  • Classicmodels в качестве образца базы данных.
  • root с пустым паролем, только ради демонстрации.

Подключение к MySQL

Во-первых, чтобы сделать это удобным, мы создадим новый файл PHP для конфигурации базы данных с именем dbconfig.php, который содержит все настроенные параметры:

Во-вторых, мы создаем новый файл PHP с именем phpmysqlconnect.php:

Как работает скрипт

  • Мы включили файл dbconfig.php в скрипт, используя функцию require_once.
  • Внутри блока try мы создали новый объект PDO с тремя аргументами: строка подключения, имя пользователя и пароль. Строка подключения состоит из переменных $host и $dbname в файле dbconfig.php.
  • Если соединение с базой данных MySQL установлено успешно, мы отобразили сообщение об успехе. Если были какие-либо ошибки или исключения, PHP выдал исключение PDOException который содержит подробное сообщение об ошибке. Мы вызываем метод getMesage() объекта PDOException, чтобы получить подробное сообщение для отображения.

В-третьих, давайте протестируем скрипт из веб-браузера.

Работает как положено. Мы успешно подключились к серверу MySQL.

Давайте попробуем что-то изменить в коде, чтобы скрипт отображал сообщение об ошибке. Если вы установите пустую переменную $username, вы получите следующее сообщение об ошибке:

Сообщение об ошибке показывает, что:

потому что у нас нет пустого пользователя в базе данных classicmodels.

Когда скрипт заканчивается, PHP автоматически закрывает соединение с сервером базы данных MySQL. Если вы хотите явно закрыть соединение с базой данных, вам нужно установить объект PDO null следующим образом:

В этой статье вы узнали, как подключиться к MySQL с помощью объекта PHP PDO и обрабатывать любые исключения, которые могут возникнуть при подключении базы данных MySQL.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Локальный сервер mysql

Ниже расскажу о том, как настроить удаленное подключение к Linux серверу с установленным MySQL, представим ситуацию — есть два сервера, на одном планируется развернуть WEB сервер, на другом сервер БД, это хорошая практика, так сказать первый шаг к масштабируемой структуре, итак начнем.

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

Разрешаем удаленное подключение к MySQL

Первым делом смотрим что прослушивает наш MySQL:

Обратим внимание на 0 0.0.0.0:3306 т.е. из состояния видно, что сервер «слушает» подключения локально, дабы разрешить удаленные подключения необходимо закомментировать параметр skip-networking и добавить параметр bind-address в раздел [mysqld] файла my.cnf:

где bind-address, адрес сервера на котором установлен MySQL, перед тем, как производить вышеуказанные действия необходимо убедиться, что хост нормально «видит» себя:

сохраняем файл, перезапускаем сервис mysql:

и проверяем состояние:

отлично, далее необходимо создать базу и разрешить к ней подключение, как это сделать расскажу на примере phpMyAdmin, после входа в административную часть phpMyAdmin необходимо перейти на вкладку Privileges и добавить пользователя mysql — Add user, в данном случае интересует параметр Host, в выпадающем списке необходимо выбрать Use text field и указать IP адрес WEB сервера или сервера с которого будет производиться подключение к БД, подобные действия из терминала:

Создать базу и дать привилегии из терминала mysql

Дать привилегии к существующей базе mysql из терминала

Разрешить доступ с любого хоста ко всем базам на сервере

Разрешить удаленные подключения к MySQL в Iptables

Проверка удаленного подключения к MySQL

Проверяем прослушку порта 3306 на сервере БД:

Примечание: перед проверкой не забываем проверить настройки файервола на БД сервере

Если сервер не отклоняет запрос, пытаемся произвети подключитение к серверу из-под пользователя user:

Если подключение происходит нормально, перенастраиваем подключение к БД на своей CMS.

Статья Установка Apache, PHP, MySQL, phpMyAdmin

Pirnazar

Well-known member

Теперь доступна инструкция “Установка и настройка сервера Apache, PHP, MySQL, phpMyAdmin на Windows 10“. Она заменяет инструкцию, размещённую на этой странице. Инструкцию на этой странице следует считать устаревшей и больше неподдерживаемой (т.е. я больше не буду отвечать на вопросы, возникшие при использовании устаревшего мануала). Пожалуйста, пользуйтесь новым материалом, даже если у вас не Windows 10 (на все версии Windows веб-сервер устанавливается одинаково).

Локальный сервер необходим любому Web-разработчику. Существует довольно много пакетов “всё в одном”, включающих Apache, PHP, MySQL и другие элементы. Можно пользоваться ими, но, например, создатели PHP рекомендуют самостоятельно устанавливать и настраивать все компоненты, это позволяет исключить попадание на ваш компьютер злонамеренного кода. От себя добавлю, что самостоятельная установка и настройка компонентов позволяет использовать самые новые версии программ, не дожидаясь их добавления в пакеты.

Установка сервера включает в себя установку и настройку нескольких элементов:

  • сам сервер (Apache);
  • скриптовый язык PHP;
  • система управления базами данных MySQL;
  • веб-интерфейс для администрирования СУБД MySQL phpMyAdmin.

На самом деле самостоятельная установка и настройка не должна вызывать особых трудностей, но имеется ряд неочевидных моментов, которые могут отнять время. Данная статья расскажет о подробностях установки и возможных трудностях. Каталоги, в которые ставятся элементы сервера, отличаются от дефолтных (ниже есть объяснение, почему так сделано). Если вы будете точно придерживаться этой инструкции, то у вас всё обязательно заработает и это не займёт много времени.

Кстати, установка производиться на Windows 8.1, но, на самом деле, на других версиях Windows процесс абсолютно ничем не отличается.

1. Подготовительная стадия – скачивание дистрибутивов.

Будем устанавливать самые новые версии программ, скаченные с официальных сайтов.

Начнём мы с PHP и в дальнейшем станет ясно почему. Переходим на

Нас интересуют zip-архивы. Первое, что бросается в глаза, это то, что есть 32-битная (x86) и 64-битная (x64) версии. Если у Вас 64-битная версия ОС Windows, то можете выбрать любую из этих версий. Если у вас Windows 32-битная, то можно поставить только 32-битную версию PHP.

Я выбрал 64-битную версию. Хотя она и носит статус «экспериментальная», но никаких проблем со стабильностью или с дополнительными ошибками это не вызывает.

Выбираем версию VC11 x64 Thread Safe (на самом деле, разница для локального сервера между VC11 x64 Thread Safe и VC11 x64 Non Thread Safe несущественна, но с VC11 x64 Non Thread Safe у меня возникали проблемы при настройке сервера).

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

Там можно поменять язык (язык влияет только на отображение сайта, а не на скачиваемые файлы) и выбрать файл 64- или 32-битный – точно такой же битности, какой вы хотите установить PHP.

Я выбрал 64-битный, т.е. VSU4vcredist_x64.exe

Что означает, что современные версии PHP не будут работать с Apache с официального сайта, который скомпилирован на старом компиляторе. Единственный выход для работы новых версий PHP, это Apache с сайта Apache Lounge.

Для скачивания Apache переходим по

Опять видим 32- и 64-битные версии. Я выбрал 64-битную.

Переходим к скачиванию MySQL.

Нас интересуют следующие файлы:

Windows (x86, 64-bit), ZIP Archive
Windows (x86, 32-bit), ZIP Archive

Они различаются битностью, скачиваем подходящий для вашей ОС.

Практически обязательным элементом сервера стал phpMyAdmin, его скачиваем с

При попытке запуска, Apache пожалуется на отсутствие файла MSVCP100.dll и запускаться откажется. Этот файл является частью C++ Redistributable Package 2010, поэтому заблаговременно скачиваем его по

(выбираем 32- или 64-битную версию).

Загружаемый файл будет иметь имя vcredist_x64.exe – точно такое же, как Visual C++ Redistributable for Visual Studio 2012 – тем не менее, это разные файлы.

Итог: мы имеем следующие файлы:

  • php-5.5.15-Win32-VC11-x64.zip
  • httpd-2.4.10-win64-VC11.zip
  • mysql-5.6.20-winx64.zip
  • phpMyAdmin-4.2.7.1-all-languages.zip
  • vcredist_x64.exe – 2 разных файла с одинаковым именем

Запустите и установите файлы vcredist_x64.exe – к ним мы возвращаться больше не будем.

2. Выбор структуры сервера.

Теперь всё готово, можно начинать.

Несколько слов о структуре нашего сервера.

На диске C создаём каталог Server, в нём создаём каталоги bin (сюда будем устанавливать Apache, PHP, MySQL) и data (здесь будет наш сайт и база данных).

Казалось бы, для чего это нужно? На самом деле, это упрощает бэкап. Например, папка binменяется очень редко и бэкапить её каждый день нет смысла. Напротив же, содержимое нашего сайта и баз данных может меняться ежедневно и имеет смысл бэкапить папку dataчасто. Когда мы обновляем файлы сервера, например, ставим новую версию PHP, то мы можем принудительно сделать копию bin и, в случае ошибок, без проблем откатиться на более старую версию.

Продолжим наши приготовления. В каталоге data создадим две папки:

  • DB (здесь будут храниться базы данных)
  • htdocs (здесь будут наши сайты)

3. Установка и настройка Apache.

В каталог bin распаковываем файлы Apache (из архива httpd-2.4.10-win64-VC11.zip), точнее нас интересует только папка Apache24.

После распаковки переходим в каталог c:ServerbinApache24conf и открываем файл httpd.conf любым текстовым редактором.

на
ServerName localhost

меняем
ServerRoot “c:/Apache24”

на
ServerRoot “c:/Server/bin/Apache24”

меняем
DocumentRoot “c:/Apache24/htdocs”

на
DocumentRoot “c:/Server/data/htdocs/”

и меняем
DirectoryIndex index.html

на
DirectoryIndex index.html index.php index.htm

Сохраняем и закрываем файл. Всё, настройка Apache завершена!

Переходим в каталог c:ServerbinApache24bin и запускаем httpd.exe

Теперь в браузере набираем

и видим следующее:

Это означает две вещи:

1. Apache работает

2. в каталоге c:Serverdatahtdocs нет ни одного файла.

Можете поиграться – добавить в каталог любые html-файлы – полноценный сервер работает.

Но, на самом деле, хотя Apache работает в данный момент, он ещё не установлен. Т.е. при закрытии консольного окна, служба Apache остановится. Чтобы этого не произошло необходимо провести установку.

Нам нужно открыть Командную строку в режиме администратора. Для этого:

1. Нажмите кнопку Пуск.

2. В поле поиска введите “командная строка”.

3. В списке результатов щелкните правой кнопкой “Командная строка” и выберите команду “Запуск от имени администратора”. Введите пароль администратора или подтверждение пароля, если появится соответствующий запрос.

В открывшееся досовское окно копируем:

Теперь служба MySQL будет запускаться при каждом запуске Windows, но в данный момент она ещё не запущена. Чтобы это сделать, в командной строке нужно набрать

или просто перезагрузить компьютер.

5. Установка и настройка PHP.

В папке c:Serverbin создаём каталог PHP и копируем в него содержимое архива php-5.5.15-Win32-VC11-x64.zip

В файле c:ServerbinApache24confhttpd.conf в самый конец добавляем строчки

И перезапускаем Apache

В каталоге c:Serverdatahtdocs создаём файл с названием i.php

Копируем в этот файл:

. Если вы видите тоже самое, что на картинке, значит PHP работает.

Настройка PHP происходит в файле php.ini. В zip-архивах, предназначенных для ручной установки и для обновлений, php.ini нет (это сделано специально, чтобы случайно не затереть ваш файл, с вашими уникальными настройками). Зато есть два других, которые называются php.ini-development и php.ini-production. Любой из них, при ручной установке, можно переименовать в php.ini и настраивать дальше. На локалхосте мы будет использовать php.ini-development.

Открываем файл php.ini любым текстовым редактором, ищем строчку
; extension_dir = “ext”

и заменяем её на
extension_dir=”C:ServerbinPHPext”

т.е. мы разкоментировали строку (убрали точку с запятой в начале)

Теперь разкомментируем целую группу строк:

т.е. должно получиться:

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

6. Установка и настройка phpMyAdmin.

В каталог c:Serverdatahtdocs копируем содержимое архива phpMyAdmin-4.2.7.1-all-languages.zip. Переименовываем phpMyAdmin-4.2.7.1-all-languages в phpmyadmin (для лаконичности)

В каталоге c:Serverdatahtdocsphpmyadmin создаём папку config. В браузере открываем адрес

На вкладке “Обзор” нажимаем кнопку “Новый сервер”. На вкладке “Параметры сервера” ставим галочку в одном единственном пункте “Разрешать подключения без пароля” и нажимаем “Сохранить”

Происходит переход на вкладку “Обзор”, там ещё раз нажимаем «Сохранить».

Теперь из каталога c:Serverdatahtdocsphpmyadminconfig файл config.inc.php перемещаем в каталог c:Serverdatahtdocsphpmyadmin

Каталог config удаляем!

В браузере набираем

В качестве имя пользователя вводим root. Поле пароля оставляем пустым.

Если всё сделано правильно, то всё должно выглядеть так:

7. Использование сервера и бэкап данных.

В каталоге c:Serverdatahtdocs создавайте папки и файлы, например

c:Serverdatahtdocstestajax.php – этот файл, соответственно, будет доступен по адресу

Для создания полного бэкапа всех сайтов и баз данных достаточно скопировать каталог data.

Перед обновлением модулей, делайте бэкап папки bin – в случае возникновения проблем, можно будет легко откатиться к предыдущим версиям.

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

В них и хранятся все настройки.

8. Дополнительная настройка PHP.

PHP в настоящее время очень мощный, гибкий, удобный инструмент. На локальном компьютере с помощью него можно решать разнообразные задачи, совсем не обязательно связанные с генерацией Web-страниц. При решении неординарных задач можно упереться в ограничения, установленные в настройках. Эти настройки содержаться в файле php.ini(c:ServerbinPHPphp.ini) Рассмотрим некоторые из них:
устанавливает максимальное количество памяти, которое может использовать скрипт

Менять эти настройки совершенно необязательно, но полезно о них знать.

9. Дополнительная настройка phpMyAdmin.

Мы уже настроили phpMyAdmin и большинству вполне достаточно базового функционала. Тем не менее, на стартовой странице phpMyAdmin есть надпись:


«Дополнительные возможности phpMyAdmin не настроены в полной мере, некоторые функции были отключены».

Новыми возможностями являются:

  • показ связей между (связанными) таблицами;
  • добавление информации о таблицах (начиная с версии 2.3.0 вы можете описывать в специальной таблице ‘table_info’ какая колонка будет показана во всплывающей подсказке при движении курсором над связанным ключом);
  • создание PDF-схемы (начиная с версии 2.3.0 вы можете в phpMyAdmin создавать PDF страницы, показывающие связи между вашими таблицами);
  • отображать комментарии столбцов (начиная с версии 2.3.0 вы можете делать комментарий с описанием каждого столбца для каждой таблицы. И они будут видны в «предварительном просмотре для печати». Начиная с версии 2.5.0, комментарии используются на собственных страницах таблиц и в режиме просмотра, показываясь как всплывающие подсказки над колонками (таблицы свойств) или встроены в заголовок таблицы в режиме просмотра. Они также могут быть показаны в дампе таблицы);
  • создавать закладки (начиная с версии 2.2.0, phpMyAdmin позволяет пользователям делать закладки на запросы. Это может быть полезно для часто используемых запросов);
  • история SQL-запросов (начиная с версии 2.5.0 вы можете сохранять вашу историю всех SQL запросов, которые были сделаны через интерфейс phpMyAdmin);
  • дизайнер (начиная с версии 2.10.0, доступен инструмент Дизайнер; он позволяет визуально управлять связями между таблицами);
  • информация о недавно использованных таблицах;
  • настройка интерфейса часто используемых таблиц;
  • слежение (начиная с версии 3.3.x доступен механизм слежения. Он помогает вам проследить каждую SQL команду, которая была выполнена phpMyAdmin’ом. Поддерживается запись работы с данными и запись команд. После включения, вы сможете делать версии таблиц);
  • пользовательские настройки (начиная с версии 3.4.x, phpMyAdmin позволяет пользователям задавать большинство настроек и сохранять их в базе данных);
  • настраиваемые меню (начиная с версии 4.1.0 вы можете создавать группы пользователей, которым будут доступны только назначенные пункты меню. Пользователь может быть определён в группу и будет видеть только пункты меню, доступные для его группы);
  • спрятать/показать пункты навигации (начиная с версии 4.1.0 вы можете спрятать/показать пункты в навигационном дереве).

Сейчас мы настроим эти дополнительные возможности в полной мере. Откройте phpMyAdmin и нажмите кнопку «Импорт». На открывшейся вкладке нажмите кнопку «Выберите файл».

В открывшееся окно браузера скопируйте строчку:

(т.е. мы выбрали файл create_tables.sql, находящийся в каталоге c:ServerdatahtdocsphpMyAdminexamples)

На страничке phpMyAdmin нажмите «ОК».

После успешного завершения импорта должна появиться новая база данных с названием phpmyadmin.

Перейдите на вкладку «Пользователи».

Нажмите «Добавить пользователя». В поле «Имя пользователя:» впишите pma

Вставьте какой-нибудь пароль, я использую простой пароль – цифра 1 (это локалхост!). В привилегиях менять ничего не надо, нажмите «ОК». Мы автоматически переходим на страничку со списком пользователей, где уже есть pma

Нажмите на «Редактирование привилегий» для данного пользователя. Найдите «Привилегии уровня базы данных». И в пункте «Добавить привилегии на следующую базу данных:» выберите базу данных с именем «phpmyadmin». На новой страничке во вкладке «Привилегии уровня базы данных» нажмите «Отметить все» и нажмите «ОК».

Открываем любым текстовым редактором файл config.inc.php (в директории c:ServerdatahtdocsphpMyAdmin) и добавьте туда следующие строчки.

Замечания:

  • в первой строчке пароль замените на свой, который вы вводили, когда создавали пользователя
  • строки можно вставлять в любое место в файле, главное, чтобы после $i++; и до символов ?>

Сохраняете файл. Выходите из phpMyAdmin – именно нажимаете кнопку «Выход» и логинитесь заново, а не просто открываете-закрываете страничку.

Несколько скриншотов новых функций:

Топ-пост этого месяца:  Как реализовать вот такую штуку (отдельная страница отзывов)

Следующим шагом, после настройки и тестирования сайта на локалхосте, является выбор качественного и дешёвого интернет хостинга. Я перебрал довольно много решений и нашёл очень хороший вариант — 100 рублей в месяц! За эти деньги даётся профессиональный хостинг, с отличным аптаймом, с бесплатным доменом второго уровня в подарок (!), с 2 гигабайтами места на SSD диске, с неограниченным количеством баз данных, с возможностью подключать неограниченное количество новых доменов (платить придётся только за каждый новый домен — 139 рублей). Вообще, всего хорошего так много, что проще всего посмотреть это

Кстати, а ведь как здорово иметь собственное доменное имя! Хотя бы для того, чтобы сделать для себя красивый почтовый ящик, вместо чего-нибудь вроде [email protected] Вот

можно найти свой собственный домен. Например, я получил бесплатно домен codeby.net, я могу делать почтовые ящики: [email protected], [email protected], [email protected] и так далее — количество ящиков ничем не ограничено!

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

, дающий бесплатный месяц, если хотите, можете воспользоваться.

ALEXEY
20.08.2014 в 05:12
Теперь доступна инструкция «Установка и настройка сервера Apache, PHP, MySQL, phpMyAdmin на Windows 10». Она заменяет инструкцию, размещённую на этой странице. Инструкцию на этой странице следует считать устаревшей и больше неподдерживаемой (т.е. я больше не буду отвечать на вопросы, возникшие при использовании устаревшего мануала. Пожалуйста, пользуйтесь новым материалом, даже если у вас не Windows 10 (на все версии Windows веб-сервер устанавливается одинаково).

Самые частые ошибки и вопросы при настройке и установке Apache, PHP, MySQL, phpMyAdmin – крайне рекомендуется к прочтение перед тем, как задать вопрос о своей проблеме.

А также рекомендуется к прочтению статья «Как установить ModSecurity (mod_security) на Apache».

Если у вас возник вопрос, крайне настоятельно рекомендую задать его в нашем с вами форуме, в специализированной ветке

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

ALEXEY
02.09.2014 в 07:10
Я уже не раз устанавливал сервер по вашей статье, но сейчас, ни с того, ни с сего, начались проблемы. А именно, при попытке зайти в phpMyAdmin появляется ошибка: «На этой странице обнаружена циклическая переадресация»; и адрес выглядит так:

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

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

Чтобы разобраться в ситуации, мне нужны ответы на следующие уточняющие вопросы-рекомендации:

1) есть ли в корневой директории (C:Serverdatahtdocs) или в каталоге phpMyAdmin файл .htacess? Если есть, то, скорее всего, проблема в том, что Вы туда записали.

2) Вносились ли изменения в исходный код phpMyAdmin? Пробовали ли Вы устанавливать новую «чистую» версию с сайта?

3) Попробуйте открывать phpMyAdmin в других браузерах, попробуйте почистить кукиз и кеш браузера.

4) Посмотрите файл C:WindowsSystem32Driversetchosts , даже если Вы этот файл не трогали, вирусы могли внести в него изменение.

5) Самый главный вопрос – это (циклическая переадресация) присутствует только при открытии phpMyAdmin? Другие страницы на Вашем сервере открываются нормально?

6) Попробуйте переименовать каталог pma (дайте ему любое другое название, чтобы там не встречалась эта последовательность «pma», например, сделайте имя «phpMyAdmin» или первоначальное «phpMyAdmin-4.2.8-all-languages».

7) На самом деле, проблема может быть вызвана даже несовместимостью со сторонними программами, которые, казалось бы, никакого отношения к серверу не имеют (например, настольная версия яндекс.кошелька активно обращалась к адресу 127.0.0.1) – попробуйте вспомнить, какие новые программы устанавливали в то самое время, когда началась эта проблема.

ВЛАДИМИР
05.09.2014 в 17:04
1) Этот файл есть только в корневой директории (C:Serverdatahtdocs) и он принадлежит установленной CMS. Его содержимое не влияет на ситуацию, потому что, даже при полностью пустой директории (остается только папка pma), возникает, описанная мной проблема.
В папке с phpMyAdmin такого файла нет и, насколько я знаю, по умолчанию не должно быть.

2) Изменения в исходный код не вносились. Был только создан файл config.inc.php, согласно вашей инструкции.

3) Куки чистил. Открывал в разных браузерах. Проблема остается.

4) В файле hosts все нормально:
127.0.0.1 localhost
::1 localhost
127.0.0.1 rad.msn.com # Это строчка убирает рекламу в Skype. Ее отсутствие не решает проблему.

5) Другие страницы открываются нормально. Причем, если перейти по адресу:

, то проблема не возникает. Проблема только при обращении к каталогу.

6) При переименовании проблема остается.

7) Устанавливался WebMoney Keeper Classic 3.9.9.1, его удаление не помогает. Также, был установлен клиент Bitcoin, удаление которого, тоже не помогает.

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

ALEXEY
05.09.2014 в 17:29
Владимир, я бы заострил внимание на файле .htacess, который находится в корневой директории. У меня возникали ситуации, что действие этого файла не прекращалось, если его просто убрать из каталога (однотипные запросы кешировал то ли браузер, то ли сервер). Т.е. попробуйте его убрать и перезагрузите компьютер.

ВЛАДИМИР
05.09.2014 в 17:53
Да, действительно, после удаления файла .htaccess и перезагрузки компьютера все заработало. Но этот файл нужен для работы CMS.
Вот его содержимое:

.
Посмотрите, что может быть не так?

ALEXEY
05.09.2014 в 18:19
Владимир, регулярные выражения – это моё слабое место, но попробую.
Всё дело вот в этих строчках
RewriteCond % -d
RewriteCond % (.*)
RewriteRule (.+)[^/] %1/ [R=301,L]
Эти строки ко всем запросам каталогов добавляются слеши. В комментарии к этим строкам сказано, что они борются с неким багом mod_rewrite’s trailing slash. Я погуглил, но ничего внятного про этот баг не нашёл, кроме того, что ему 10 лет. У меня есть подозрения, что этот баг давно пофиксили и можно попробовать закомментировать эти строки.

ВЛАДИМИР
05.09.2014 в 18:30
Без этих строчек, при переходе по ссылке: localhost/pma/, происходит переход на страницу 404, самой CMS.

Попробую написать автору CMS.

ВЛАДИМИР
14.09.2014 в 13:08
Короче, если кому будет интересно. Блоговый движок Эгея (

) не воспринимает в корневой директории посторонние папки. На реальном хостинге PMA обычно находится в другой директории, поэтому все работает.

NIK
13.09.2014 в 20:20
Добавляю

вместо панели управления вижу код:
-> чистая страница,

то на странице так и отображается:

т.е. php не выполняется.

Все делал по инструкции.

В чем может быть проблема? Буду рад помощи

ALEXEY
17.11.2014 в 14:07
АЛЕКСАНДР, сервер Apache работает без PHP, это ошибка номер два из Списка самых частых ошибок.

Такого результата можно добиться, например, если в файл httpd.conf забыть добавить строчки:

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

Т.е. вернитесь к шагу Установка Apache, PHP, MySQL, phpMyAdmin и проделайте всё ещё раз внимательней.

АЛЕКСАНДР
18.11.2014 в 10:05
Alexey, я все делаю по инструкции:

В папке c:Serverbin создал каталог PHP и скопировал в него содержимое архива php-5.6.3-Win32-VC11-x64.zip (в инструкции php-5.5.15-Win32-VC11-x64.zip (не смог найти), но я пробовал и php-5.5.19-Win32-VC11-x64.zip).

В файле c:ServerbinApache24confhttpd.conf в самый конец добавил 3 строки.

В каталоге c:Serverdatahtdocs создал файл i.php (содержимое:

Но когда перехожу на страницу

Делал все это несколько раз.

Результат один: php не работает

Какие могут быть этому причины?

P.S. спасибо за помощь

ALEXEY
18.11.2014 в 10:37
АЛЕКСАНДР, Вы всё верно делаете, когда выбираете самые последние версии PHP.
У Вас Apache тоже 64-битный? Apache и PHP должны быть одной битности. После внесения изменений, не забывайте сохранить конфигурационный файл httpd.conf, а сервер обязательно перезапускайте.

В инструкции это есть, но на всякий случай скопирую сюда ещё раз с оф. сайта:

The VC11 builds require to have the Visual C++ Redistributable for Visual Studio 2012 x86 or x64 installed.

Т.е. у Вас должен быть установлен распространяемый Visual C++ для Visual Studio 2012 x86 или x64

Если всё-всё это сделано, то пишите сюда опять – будем разбираться дальше.

СЕРГЕЙ
03.12.2014 в 22:50
Подскажите как быть с этим? mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:Server

ALEXEY
05.12.2014 в 05:16
СЕРГЕЙ, это не ошибка сервера. Это предупреждение со стороны PHP. Во-первых, это означает, что и сервер и PHP работают нормально, и версия PHP у Вас свежая.

Во-вторых, само предупреждение вызвано тем, что в скриптах, которые Вы запускаете на своём локальном сервере, используется устаревшая функция mysql_connect().

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

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

АДАМ
06.12.2014 в 12:06
Когда вставляю «c:Serverbinmysql-5.6binmysqld» –install в командную строку, пишет: системе не удается найти данный путь.

АДАМ
06.12.2014 в 12:19
Извиняюсь, нашел решение. Собственная невнимательность(

АДАМ
06.12.2014 в 13:10
А вообще спасибо за инструкцию! Единственное, что помогло создать локальный сервер. Наверн потому,что у меня Win 8.1, а в инете находил всё на др. версиях Win.

ALEXEY
06.12.2014 в 14:05
На всех версиях Windows последовательность действий абсолютно одинаковая. Всё дело в инструкциях.

ВЛАДИМИР
20.12.2014 в 23:46
Здравствуйте.

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

Что это и, как с этим бороться?

P.S. Делал все по инструкции.

ВЛАДИМИР
21.12.2014 в 00:06

И Капитан Очевидность предлагает следующие решения:

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

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

ВЛАДИМИР
21.12.2014 в 06:51
Спасибо. Понятно.

Непонятно только, как они могли пустить в релиз версию, которую даже установить нереально?

Или реально? Может есть какие-то обходные пути?

ALEXEY
21.12.2014 в 07:02
Владимир, функцией по настройке phpMyAdmin через графический интерфейс пользуются, пожалуй, один раз в жизни. После этого просто сохраняют файл config.inc.php и, при обновлении версий, просто заменяют папку phpMyAdmin на новую и добавляют туда сохранённый файл config.inc.php – очень быстро, занимает, примерно, секунду.

Именно поэтому такая ошибка и проскочила, и, обратите внимание, тикет уже пять дней висит без ответа – никому не интересно, и вообще мало кто сталкивася с этой проблемой.

Начать пользоваться phpMyAdmin 4.3.2 очень легко:

1) распакуйте содержимое архив с phpMyAdmin;

2) добавьте туда файл с настройками config.inc.php. Если Вы не сохранили свой файл, то вот держите мой.

ВЛАДИМИР
21.12.2014 в 07:09
Спасибо. Сейчас попробую.

ВЛАДИМИР
21.12.2014 в 07:30
Спасибо. Работает.

Подскажите. А, как я все таки могу поставить пароль на root?

Прописал его здесь:

Запретил вход без пароля:

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

ALEXEY
21.12.2014 в 07:55
Владимир, Вы имеете ввиду пароль для MySQL? Или Вы имеете ввиду, чтобы пользователь root в MySQL был без пароля, а для входа в phpMyAdmin нужен был пароль?

Мне кажется, Вы неправильно понимаете смысл этой конфигурационной строки:

Пара user/password, которую phpMyAdmin использует для соединения с MySQL-сервером. Эта пара user/password не нужна, если используется HTTP или cookie-аутентификация – в этом случае она должна быть пустой
Т.е. в этой строке:

пароль для MySQL, а не для phpMyAdmin. И, как следует из документации, всё-равно туда писать ничего не нужно.

Если задача в том, чтобы вход в PMA без пароля был невозможен, то нужно:

1) задать пароль для пользователя root в MySQL.

2) перейти к настройке PMA, т.к. мой конфигурационный файл не подойдёт. Для настройки Вы можете скачать предыдущую версию PMA, сохранить файл с настройками и уже установить последнюю версию PMA для работы.

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

ВЛАДИМИР
21.12.2014 в 08:41
Да, мне нужно, чтобы вход в PMA без пароля был невозможен.

Поэтому вопрос. Как задать пароль для пользователя root в MySQL? Остальное вроде пока понятно.

ВЛАДИМИР
21.12.2014 в 09:06
Отбой. Вроде все получилось.

Уведомление: Самые частые ошибки и вопросы при настройке и установке Apache, PHP, MySQL, phpMyAdmin | WebWare.biz
TOOUUR
30.01.2015 в 00:07
Добрый вечер,

а куда копать, если после установки и настройки апачи локалхост не работает вообще? вместо этого автоматически скачивается файл «download»

ЕКАТЕРИНА
30.01.2015 в 17:30
Огромное Вам спасибо! Если бы сама искала, почему не настраивается или не устанавливается, то сутки бы потратила, а так все быстро получилось установить и настроить.

ALEXEY
30.01.2015 в 20:59
Екатерина, спасибо на добром слове – мне каждый раз очень приятно.

РУСЛАН
17.02.2015 в 15:02
Добрый день, Алексей.

Когда устанавливал всё по инструкции, при входе в phpmyadmin, вставил в поле «пользователь» – root, а «пароль» оставил пустым. Но, когда нажимаю на «далее» (или что там было, забыл), пишет, что не доступен PHP, вроде так.

Удалил всё, пытался установить всё заново, теперь, при:

c:ServerbinApache24binhttpd.exe -k install

в командной строке, пишет, что он уже установлен.

Ладно, не обратил на это внимание, затем, когда запускаю ApacheMonitor и нажимаю на «Start» сервера «Apache 2.4», он мне выдает, мол:

The requet operation has failed!

Что не так? Версии всего необходимого у меня другие:

если это имеет значения. Помогите, пожалуйста.

ALEXEY
17.02.2015 в 16:23
Руслан, здравствуйте! Ошибка в конфигурационном файле Apache (httpd.conf).

Если Вы устанавливали в те папки, как сказано в инструкции, значит что-то пропустили при настройке httpd.conf. Вы правильно делаете, что выбираете самые последние версии, главное, чтобы они все были одной битности. Например, у Вас все программы 32-битные, т.е. всё нормально.

Попробуйте делать поэтапно, с проверками после каждого шага. Например, установили Apache. Не нужно сразу ставить PHP. Проверьте, запускается ли сервер и открывается ли

. Если всё впорядке, то продолжайте. Если нужно, я могу выложить здесь все конфигурационные файлы.

РУСЛАН
17.02.2015 в 18:38
Спасибо, но, ещё вопрос.

Если я ставлю всё не на диск «C», а на «D», и в конфигурационных файлах везде, вместо «С», ставлю «D» – это не влияет на работоспособность?

ALEXEY
17.02.2015 в 18:52
Теоретически – нет. Apache и остальным компанентам всё-равно где быть установленными: любой диск, любые каталоги. Для запуска Apache есть только одно условие – правильно настроенный httpd.conf.

А на практике – Вы сами видите. Причём ошибка именно в тех директивах, о которых говорится в этой инструкции.

РУСЛАН
17.02.2015 в 19:03
Я вроде везде правильно заменяю строки в httpd.conf, но всё равно, выходи ошибка:

The requet operation has failed!

при «Start» в «ApacheMonitor».

Можете, пожалуйста, скинуть свои конфигурации httpd.conf.

РУСЛАН
17.02.2015 в 19:06
Можно ли удалить всё, что устанавливал. Ну, имею ввиду, удалить даже то, что устанавливал командой:

c:ServerbinApache24binhttpd.exe -k install

(Ставил httpd.exe на авто-запуск).

ALEXEY
17.02.2015 в 19:10
Все конфигурационные файлы.

c:ServerbinApache24binhttpd.exe -k uninstall

РУСЛАН
17.02.2015 в 20:31
С этим разобрался. Делаю всё по инструкции, но, как описывал кто-то выше, при входе в phpmyadmin вписал логин «root», пароль оставил пустым, нажимаю на «Вперёд» – выдает:

Невозможно подключиться к серверу MySQL

Уже не раз переустанавливал всё.

А, кстати, при установке MySQL в командной строке, когда вводил:

Выдал, что он уже установлен, после чего прописал:

net start mysql

На что он мне выдал:

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

Не удается найти указанный файл.

Решил попробовать удалить MySQL путем:

На что он снова мне выдал, что он уже установлен…

В чем дело? Замучился уже…

ALEXEY
17.02.2015 в 20:37
Удаляется MySQL так:

Вы говорили, что только меняли диск – но ведь у Вас и ещё и в каталог Web поставлено.

Ошибка в конфигурации, в указании путей. Эта инструкция не подразумевает, что пользователь будет что-то менять. Думаю, Вам лучше попробовать установить по какой-нибудь другой инструкции – более универсальной. Благо их сейчас множество.

РУСЛАН
17.02.2015 в 20:44
Ура, спасибо!

Удаление и установка MySQL заново решила данную проблему.

ТИМУР
01.03.2015 в 18:09
Здравствуйте, я установил сервер по вашей инструкции, но у меня возникла проблема.

Когда-то у меня стоял сервер Appserv, его характеристики таковы:
AppServ 2.5.10
Apache 2.2.8
PHP 5.2.6
MySQL 5.0.51b
phpMyAdmin-2.10.3
Тогда я экспортировал базу с phpmyadmin, и сейчас, когда установил более новые версии, при импорте выдает ошибку:

SQL запрос:
T SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;

Ответ MySQL:
#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘T SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»‘ at line 1

Сейчас версия mysql 5-я, phpmyadmin 4-я.

ALEXEY
01.03.2015 в 18:18
Что-то похожее бывало и у меня, но деталей не припомню. Попробуйте так:

1) сделайте резервную копию Вашей базы данных;

2) откройте резервный файл любым текстовым редактором (там обычный текстовый файл в виде MySQL-запросов. Конечно, если он не в архиве. Если в архиве, то предварительно распакуйте. После окончания процедуры запаковывать снова необязательно);

3) Удалите самую первую строчку. Сохраните и закройте файл.

4) Попробуйте импортировать.

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

ТИМУР
02.03.2015 в 19:50
Сделал, как вы и сказали. Удалил первую строку: SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»; Далее импортировал, после чего он мне выдает, мол ошибка с: CREATE TABLE IF NOT EXISTS `admins` ( И его удалил, но снова ошибка, выдает строку за строкой… Вот всё, что находится в бд.

ALEXEY
02.03.2015 в 20:10
Я убрал отсюда содержимое базы, файл, который я сделал из Ваших данных и который успешно смог импортировать в базу данных я отправил Вам на почту.

ТИМУР
03.03.2015 в 13:10
База импортировалась успешно, спасибо вам большое!

У меня ещё один вопрос.

Как можно проверить битность phpmyadmin? Я скачал, вроде бы, последнюю верию с

, но всё равно возникают некие проблемы. Когда регистрирую нового пользователя как рут администратора, или же обычного пользователя, данные не заносятся в базу…

ALEXEY
03.03.2015 в 13:43
phpMyAdmin – это просто PHP-скрипт (точнее, множество PHP-скриптов). Как и у любого PHP-скрипта, к phpMyAdmin не применимо такое понятие как «битность». Проще говоря, у Вас точно сказалась правильная версия, поскольку других не бывает.

Про пользователей в базе данных я не понял. Посмотреть список пользователей в phpMyAdmin можно во вкладке «Пользователи» (нужно перейти на главную страницу и там будет видна эта вкладка). Чтобы настроить права разных пользователей нужно на них кликнуть – там дальше всё довольно понятно.

Физически, конечно, данные о пользователях хранятся в базе данных. Я подозреваю, что Вы смотрите не там. Нужно смотреть БД под названием mysql, а в ней есть две таблицы user (здесь пользователи с полными привилегиями) и таблица db (здесь пользователи с ограниченными привилегиями).

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

ТИМУР
03.03.2015 в 14:17
При установке скрипта сайта, которую я устанавливаю, есть пункт, где нужно указать имя рут администратора. Я ввел имя, пароль и е-майл, и после установки пытаюсь залогиниться на сайте, на что он мне пишет, что пользователь с данным именем не найден. Вот и задумываюсь, из-за чего он криво установился и не записывает ничего в базу…

Когда у меня стояла Вин хп х86, я поставил себе аппсерв 2.5.10. Он работал отлично, не было никаких проблем. Недавно перешел на Вин 7 х86 и поставил новые версии апаче, пхп, мускул и пхпмайадмин, после чего начался весь этот бред.

Топ-пост этого месяца:  Продажи через интернет-магазины - перспективы и направления.

ALEXEY
03.03.2015 в 17:19
Эта проблема для специализированного форума по игре – ни сервер, ни ОС здесь не при чём.

Самые распространённые ошибки, из-за которых не работают готовые скрипты:

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

«Экзотическими» причинами неработы скриптов могут быть отсутствие необходимого модуля PHP, не подходящая версия PHP и т.д.

ТИМУР
06.03.2015 в 15:45
Ещё кое что хотел спросить.

– Влияет ли то, что нет пароля root в phpmyadmin на данную проблему?

– Влияет ли расположение сервера на другом диске, кроме диска С, на проблему?

Проблема остается, все же… Сотни раз переустанавливал всё, и решил залезть в логи.

Вот что было в логах Apache (Error):

[Fri Mar 06 00:00:32.986032 2015] [mpm_winnt:notice] [pid 1784:tid 368] AH00455: Apache/2.4.12 (Win32) PHP/5.6.5 configured — resuming normal operations
[Fri Mar 06 00:00:32.986032 2015] [mpm_winnt:notice] [pid 1784:tid 368] AH00456: Apache Lounge VC11 Server built: Jan 28 2015 16:48:40
[Fri Mar 06 00:00:32.986032 2015] [core:notice] [pid 1784:tid 368] AH00094: Command line: ‘D:\Server\bin\Apache24\bin\httpd.exe -d D:/Server/bin/Apache24’
[Fri Mar 06 00:00:32.986032 2015] [mpm_winnt:notice] [pid 1784:tid 368] AH00418: Parent: Created child process 1996
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
PHP Warning: PHP Startup: in Unknown on line 0
[Thu Jan 01 00:00:33.875234 2015] [mpm_winnt:notice] [pid 1996:tid 304] AH00354: Child: Starting 64 worker threads.
[Fri Mar 06 13:48:38.026815 2015] [core:error] [pid 1996:tid 836] [client 94.141.70.136:55769] AH00126: Invalid URI in request vTxc5tyxa6x8axd0x98xa0xccxf0xb7xb2x14xf0x01x10xa9x0fv dir.txt
В домашнем каталоге появится файл dir.txt, загрузите его на любой файлообменник, а ссылку сюда.

Если все файлы на месте, то значит дело в том, что в инструкции что-то уже устарело. Как минимум, нужно поставить Visual C++ Redistributable for Visual Studio 2015 RC, а ещё лучше пользоваться актуальной инструкцией Установка и настройка сервера Apache, PHP, MySQL, phpMyAdmin на Windows 10, про которую красными буквами в нескольких местах написано.

YURI
07.07.2015 в 20:19
У меня стоит Visual C++ Redistributable for Visual Studio 2015 RC

И я все снес, что было и стал делать по новой инструкции. Та же фигня.

WEBWARE TEAM
06.07.2015 в 06:42
Здравствуйте! Эта инструкция считается устаревший. Есть новая инструкция здесь: https://codeby.net/blogs/?p=3215. Но причина ошибки не в этом.

Ошибка вызвана тем, что каталог с PHP Вы положили в какую-то другую папку, а не ту, которая рекомендуется в инструкции (C:ServerbinPHP).

YURI
07.07.2015 в 19:28
Нет. Именно C:SerberbinPHP

YURI
07.07.2015 в 19:41
т.е. Server, конечно

YURI
07.07.2015 в 20:39
Все, я нашел проблему. Заработало.

WEBWARE TEAM
07.07.2015 в 20:41
Напишите, пожалуйста, для всех – в чём была проблема?

YURI
07.07.2015 в 20:46
Я каким-то образом не заметил в новой статье, что нужен еще Visual C++ Redistributable for Visual Studio 2012

Проморгал глазом, подумал, что 2010, как и в этой статье. У меня стоял 2015 и 2010, а 2012 не было. Только поставил — сразу пашет.

Работаем с PHP + MySQL.

Очень многие скрипты и программы в Интернете в своей работе используют различные Базы данных, например SQL . Хотя если быть уж совсем точным: SQL — это язык структурированных запросов. В основном это всевозможные форумы, каталоги сайтов, интернет-магазинов и т.д. Да и просто многие сайты работают с Базами Данных. Как правило это уже полу-автоматизированные или полностью автоматизированные сайты, работающие на PHP и MySQL.

Что такое MySQL?

MySQL — это популярная система управления базами данных (СУБД). База данных представляет собой структурированную совокупность данных. Эти данные могут быть любыми — от простого списка текущих покупок или перечня покупателей до перечня экспонатов картинной галереи или огромного количества информации в корпоративной сети.

Для записи, выборки и обработки данных, хранящихся в компьютерной базе данных, необходима система управления Базой Данных, — это и есть специальное програмное обеспечение — MySQL. Т.е. MySQL — это система управления Базами Данных .

Очень часто MySQL применяемая в сочетании с PHP.

Что такое PHP?

PHP — это, дословно, препроцессор гипертекста. PHP — это скриптовый язык программирования, созданный и использующийся для генерации страниц веб-сервером. В наше время язык php поддерживается практически всеми хостинг-провайдерами и является основным инструментом разработки веб-сайтов. Популярность PHP обусловлена простотой, скоростью выполнения и огромным количеством уже готовых «модулей-расширений».

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

Т.е. web-страница формируется на сервере и отдается посетителю в уже готовом виде. Например мой сайт http://www.LuksWeb.ru/ использует в своей работе именно связку PHP и MySQL. Подробнее про PHP и MySQL мы поговорим в следующих уроках и статьях.

А сегодня у нас конкретная задача: Научиться создавать Базы Данных на Локальном сервере (Денвере) для web-приложений использующих связку PHP и MySQL. Например для скрипта форума или для сайта, на базе готового движка например DLE.

Любой скрипт работающий с Базами Данных, обязательно «спросит» у Вас при установке, три основных параметра:

Этим мы сейчас и займемся.

Создаём Базу данных.

Запускаем на компьютере Локальный сервер используя ярлык Start Denwer на рабочем столе (появятся после установки Денвера на Вашем компьютере).

Набираем в адресной строке браузера: http://localhost/ , нажимаем Enter и попадаем во внутренний интерфейс Денвера. Здесь находим вот такую табличку:

Переходим по ссылке: http://localhost/Tools/phpMyAdmin — Проверка MySQL и phpMyAdmin (рисунок выше, обведено красным). И попадаем в интерфейс управления phpMyAdmin (фрагмент интерфейса):

Собственно говоря здесь и происходит всё управление, всеми Базами Данных на Локальном компьютере: создание новых баз, удаление или корректировка существующих баз данных, введение новых пользователей, присвоение этим пользователям прав доступа и т.д.

В левой части в выпадающем списке, содержатся все База Данных созданных на Вашем Компьютере. Если Вы только установили Денвер, то здесь у Вас еще ничего нет, но знайте что как только Вы создали новую Базу Данных — она появится здесь.

В окне Создать новую БД (рисунок ниже) пишем название Имя Базы Данных:

Имя Базы Данных выбирается произвольно, так чтобы самому потом разобраться (когда БД будет много) к какому сайту относится эта База Данных, например я стараюсь привязать название к донему. В данном случае Имя Базы Данных у нас будет russ67 .

Далее нажимаем кнопку Создать .

При создании Базы Данных на реальном хостинге процесс создание выглядит так же как и на Локальном сервере, но здесь есть одна тонкость. У Вас будет автоматически добавляться в левой стороны префикс и нижнее подчеркивание. Этот префикс обычно привязывается к Логину на Вашем хостинге.

Например Логин на Хостинге у Вас roma . Значит Имя Базы Данных на реальном хостинге будет выглядеть так: roma_russ67 . Точно такое же имя Безе данных Вы можете создать и на Локальном сервере это как Вам удобнее работать.

Итак, мы нажали кнопку Создать и сразуже видим вот такое сообщение:

Обратите внимание на подчекнутое красным (рисунок выше), Локальный сервер сообщает нам, что База Данных создана.

Теперь нам нужно создать Пользователя для этой Базы Данных. Возвращаемся назад, в интерфейс управления MySQL, для этого нажимаем кнопочку (рисунок ниже):

И здесь выбираем пункт Привелегии (рисунок ниже):

Здесь опускаемся вниз и Выбираем ссылку Добавить нового пользователя (рисунок ниже):

Далее Вы попадаете на страницу добавления Новых пользователей (рисунок ниже):

Здесь заполняете все поля:

Имя пользователя — придумываете сами (произвольно) в данном случае я написал Ivan (но это может быть абсольтно любое слово, главное чтобы сами поняли).

Внимание! На реальном хостинге в интернете к Имени Пользователя будет добавляться такой же префикс как и при создании БД. Т.е. привязывается к Логину на сервере будет выглядеть вот так: roma_Ivan

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

Пароль — придумываете самостоятельно, повторите пароль.

Дальше идет таблица, Глобальные привелегии. Так как Вы по сути дела назначаете администратора БД, то естественно даете ему все привелегии и возможности совершать все операции, для этого нажмите ссылку Отметить все .

И заключительный штрих, нажимаем кнопку Пошел . Появляется вот такое сообщение:

Поздравляю! Вы успешно создали новую Базу Данных и Пользователя к этой БД. Теперь Вы можете разворачивать на Локальном сервере любой скрипт, работающий в связке PHP и MySQL.

Как зайти в MySQL – подробное описание всех дверей

Дата публикации: 2020-04-11

От автора: опять заплутали, и не знаете, как зайти в MySQL? Не вы первый! Собирайте всех заблудившихся, и сейчас отправимся прямиком в гости к ней. К кому «к ней»? К самой популярной СУБД всемирной паутины!

Где в Денвере находится MySQL

Имеется в виду не столица штата Колорадо в США, а пакет программ для создания и тестирования приложений на PHP. В состав набора для «джентльменов» входит локальный сервер Apache, MySQL сервер и оболочка phpMyAdmin. Именно с помощью данного программного пакета чаще всего «новички» познают все тонкости работы с этой системой управления БД.

Перед тем, как зайти в MySQL через браузер, нужно запустить локальный сервер, затем в адресной строке набрать localhost, и в появившемся окне «Ура, заработало!» в разделе утилиты выберите phpMyAdmin.

После нажатия на ссылку перейдете в интерфейс этой оболочки для работы с СУБД. Или можно сразу в адресной строке браузера указать путь к ней: http://localhost/Tools/phpmyadmin/index.php

Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

После чего окажетесь там-же (в phpMyAdmin).

Проходим к базам данных через «лабиринт»

Мы с вами отправимся в «дремучий» лес, и постараемся через него «пробраться» к серверу баз. Не подумайте, что мы от кого-то прячемся, просто сейчас мы будем действовать, как настоящие веб-разработчики. Поехали!

Перед тем, как зайти в MySQL через командную строку, следует выяснить, где находится главная директория сервера баз данных. Если вы используете СУБД в «чистом» виде без «примесей» (вне «джентльменского» набора), то корневая папка сервера расположена здесь: C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql.exe

Если вы используете Денвер, то искомый фал находится по этому пути: Z:\usr\local\mysql-5.5\bin\mysql.exe,

где Z – это виртуальный диск, который создается после запуска локального веб-сервера. У вас он может быть под другим именем (точнее, буквой).

Нас интересует именно файл mysql.exe. Запустим его на выполнение, указав имя сервера баз данных, пароль и пользователя, под которым зайдем в MySQL.

Как включить MySQL через командную строку: заходим в «Пуск», среди стандартных программ выбираем «Командная строка». Запускаем утилиту, и с этого момента опишем всю процедуру «хождения» в дремучем лесу пошагово, чтобы вся группа «заблудившихся» не потерялась еще раз Стартуем:

В черное окно CMD (командной строки) вводим путь, где хранится исполняемый файл MySQL, а рядом указываем имя пользователя СУБД и пароль. Так как у нас локальный сервер, то мы вводим после идентификатора u имя пользователя root без пароля.

На самом деле это неправильно, и для каждого пользователя сервера MySQL должен быть установлен пароль. Более подробно все вопросы безопасности СУБД мы рассмотрим в одной из наших следующей публикации.

Вот весь кусок «кода»: Z:\usr\local\mysql-5.5\bin\mysql.exe -u root

Если все прошло успешно, то ниже в окне командной строки должна появиться информация о версии запущенного сервиса, год выпуска и другая «ненужная» для нас информация.

Теперь, чтобы проверить правильность подключения, введем после оператора mysql> запрос, который отобразит все базы данных хранящиеся на сервере. Код запроса:

Установка программы-сервера MySQL…

Итак, начнем по порядку. Для экспериментов нам понадобится программа-сервер. Я остановил свой выбор на MySQL. Бесплатная, распространенная, удобная, отлаженная и просто любимая многими программистами ��

Установка программы-сервера MySQL на локальный компьютер (у меня ОС windows 8.1)

Дистрибутив, в соответствии с разрядностью своей системы, (mysql-5.5.23-winx64.msi) скачал с официального русского сайта mysql.ru в разделе download. На момент написания статьи там доступна и 6 версия, но, насколько, я понял, она ещё не стабильна и находится в стадии тестирования.

Установка традиционная – визуальная, несколько раз “Next” и программа готова работать. Программа предложила директорию “C:\Program Files\MySQL\MySQL Server 5.5\” и я не стал ей отказывать.

По окончании установки была возможность запустить MySQL Server Instance Configuration Wizard, аналогичным образом не стал отказывать программе ��

Я выбрал первый вариант, так как устанавливаю на локальный компьютер и буду экспериментировать с программой-сервером как разработчик.

Здесь аналогично – выбрал первый вариант, так как моя цель – различные эксперименты с программой-сервером, без ограничений.

Здесь у меня возражений нет, просто нажимаю “Next”

Здесь выберем первый вариант, так как для первых экспериментов достаточно будет до 20 одновременных подключений. Впоследствии, это можно поменять.

Программа предлагает порт 3306 – соглашаемся, а также на опцию Enable Strict Mode;

Выбираю второй вариант, потому что живу в России ��

Выбираем инсталляцию как сервиса windows, а также автоматический запуск, потому что нам нужна постоянная работа программы. Да и просто, это удобно, когда не нужно по 100 раз запускать её в ручную на период экспериментов с программой-сервером MySQL. Вторую “галку” ставим для того, чтобы вызывать программу управления и другие EXE из командной строки, для тех, кто к ней привык.

По умолчанию MySQL создает “суперпользователя” под именем root и в этом диалоговом окне предлагается его заполнить. Я проставил стандартный пароль для баз данных из учебников “masterkey” без кавычек;

Для безопасности “галки” для удаленных машин и анонимных пользователей, я пока ставить не стал. Это можно будет проставить позже;

Далее система работает самостоятельно, после нажатия на Execute;

Если все нормально – сервер запустится в виде службы под именем MySQL, и его можно будет увидеть в списке служб;

Устанавливаем Max_Allowed_Packet в my.ini

Это такая штука, которая обязательно Вам встретится при разработке, поэтому советую – поправить её сразу. Размер пересылаемых пакетов – по умолчанию стоит 1 Мб. А когда Вы будете делать элементарный бэкап (дамп) своей базы, то соответственно, увидите ошибку MySQL has gone away .

У меня дамп одной из баз данных был равен примерно 18 мб., а max_allowed_packet по умолчанию при установке равен 1 МБ, соотвественно, при попытке его загрузить обратно в базу выскакивала ошибка MySQL has goneAway.

Чтобы этого не происходило – зайдите в WIndows под администратором,

Если учетная запись администратора не включена, то включить её можно вот так…

Win+X –> Командная строка ( администратор )

Для включения встроенной учетной записи Администратор в русской версии Windows используйте команду

net user Администратор /active:yes

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

net user Administrator /active:yes

C:\Program Files\MySQL\MySQL Server 5.5\my.ini

-найдите в нем секцию

-и допишите туда max_allowed_packet=1024M

1024M это максимально допустимое значение этого параметра в MySQL, можете поставить меньше, в зависимости от своей задачи.

Что дальше?
Создадим базу данных в данной программе-сервере и первую таблицу;

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

Управление удалённым доступом к серверу MySQL

Нередко, удалённый доступ к серверу MySQL — это единственный способ управления своими базами данных (БД). Для хостинг-провайдеров подобная техническая возможность является обязательной для качественного предоставления услуг клиентам. Для веб-разработчиков (вообще для разработчиков) удалённый доступ позволяет использовать один общий ресурс для обслуживания БД. В любом случае, просто так по-умолчанию сервер MySQL удалённые подключения не допускает. Для включения удалённого доступа к MySQL необходимо конфигурирование определённых параметров как самого сервера, так и обслуживаемых БД и их пользователей. В данной статье будут рассмотрены основные принципы предоставления удалённого доступа к серверу MySQL.

Что для этого нужно?

Сервер MySQL по-умолчанию в целях безопасности сконфигурирован таким образом, что может принимать только локальные соединения, поступающие через локальный сокет с той же самой машины, на которой работает и сам сервер. Эта настройка обслуживается опцией «bind-address» в конфигурационном файле MySQL-сервера

/etc/mysql/mysql.conf.d/mysqld.cnf . Изменив значение указанной опции и перезапустив сервер MySQL можно предоставить доступ для удалённых клиентов.
Кроме самой возможности удалённого подключения к серверу MySQL необходимо также и позаботиться о предоставлении соответствующих привилегий удалённым пользователям. Это также очень важно как для комфортной работы, так и для безопасности. Привилегии пользователей MySQL предоставляются как для подключений, так и для работы

непосредственно с БД. В первом случае для пользователя могут быть заданы привилегии, ограничивающие его действия для конкретного типа подключения. Например, удалённо пользователь не может удалять БД. При этом неважно, что сервер корректно настроен для удалённого доступа. Во втором случае у пользователя могут быть заданы ограничения на уровне самих БД, таблиц и процедур, действующие только при удалённом подключении и отсутствующие при локальном. Например, так бывает, когда системный администратор MySQL не хочет, чтобы БД, таблицы, данные можно было удалить работая с сервером через удалённое подключение, а только локально.

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

Настройка сервера MySQL

По-умолчанию для опции «bind-address» в файле /etc/mysql/mysql.conf.d/mysqld.cnf задано значение 127.0.0.1. И подключиться к серверу можно только локально:

Для того, чтобы иметь доступ к MySQL-серверу с любого IP-адреса, т. е. с любого компьютера в сети, нужно значение 127.0.0.1 изменить на 0.0.0.0:

Сделав изменения в и сохранив файл нужно перезапустить сам сервер MySQL:

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

Здесь «db_host» – это адрес (IP или имя хоста) компьютера, на котором работает сервер MySQL. При удачном подключении пользователь будет переведён в интерфейс командной консоли MySQL.

Настройка привилегий БД

На сервере MySQL может быть несколько пользователей с одинаковым именем, но разным режимом доступа. Например, пользователь с именем john, которому доступно только локальные подключения. На самом деле распознается сервером MySQL как пользователь с именем «[email protected]». Для того, чтобы пользователь john мог подключаться ещё и удалённо с любого IP. На сервере должна быть создана ещё одна учётная запись с именем «[email protected]%». Вот как выглядит создание такой учётной записи в веб-интерфейсе phpMyAdmin:

Как можно видеть, в системе управления доступом MySQL для учётной записи пользователя существует отдельный атрибут «имя хоста», регламентирующий режим подключения. Это сделано как для повышения самой безопасности, так и для более гибкого управления и администрирования. Тот случай, когда одно другому не только не мешает. Но в совокупности поднимает эффективность и безопасность всего сервиса.

Поскольку учётные записи [email protected] и [email protected]% являются разными (хотя и принадлежат одному пользователю), то для них можно отдельно настраивать привилегии. Например, для учётной записи [email protected]% в phpMyAdmin это выглядит следующим образом:

Как можно видеть, администратор запретил пользователю john удалять БД через удалённое подключение. Таким же образом можно устанавливать (или убирать) ограничения на уровне БД. Т. е. при работе с таблицами, а также на уровне таблиц — при работе непосредственно с данными.

Заключение

В заключение стоит ещё раз отметить, что предоставление удалённого доступа к БД путём изменения параметра bind-address в значение 0.0.0.0 должно проводиться с учётом принятых мер по обеспечению дополнительной безопасности сервера.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий