Установка 64-битных версий Apache, PHP, MySQL на Windows 64bit
Apache MySQL PHP WAMP Windows 64 Установка 64-битных версий Данная статья Вам расскажет как установить на Вашу Windows 64bit систему Apache, PHP, MySQL и сделать полноценный 64-битный веб-сервер.
На данный момент нет официальных 64-битных версий Apache и PHP для Microsoft Windows 64bit. Только MySQL официально поддерживает 64-битные версии Windows.
Если у Вас установлена 64-битная версия Windows (2003/XP/Vista/Seven) и вы хотите использовать 64-битные версии программ для веб-сервера то эта статья для вас! В этой статье я покажу вам, как установить и настроить веб-сервер Apache 2.2.10 x64, PHP 5.2.5 x64 и MySQL 5.1.40 x64 на Windows 2003/XP/Vista/Seven 64bit. Хотя данная установка была успешно протестирована на Windows 7 64bit, я не несу ответственности за любой ущерб, который мог возникнуть на компьютере используя данное руководство. Действуйте на свой страх и риск.
Далее устанавливаем Apach: распаковываем дистрибутив в G:\WORK_SERVER\Apache и устанавливаем как сервис руками с помощью команды G:\WORK_SERVER\Apache\bin\httpd.exe -k install Делается это в такой последовательности Пуск >> Выполнить >> cmd >> жмем Enter Копируем сюда строку и нажимаем Enter Создаем ярлык на G:\WORK_SERVER\Apache \bin\ApacheMonitor.exe и помещаем его в папку автозагрузки (можно этого не делать, но поскольку он отъедает всего 2Mb оперативки его присутствие в трее некритично для производительности системы).
Далее настраеваем Apache:
Большинство настроек Apache содержатся в файле G:\WORK_SERVER\Apache\conf\httpd.conf Пройдемся сверху вниз: стр.36 ServerRoot "G:\WORK_SERVER\Apache" - папка сервера стр.47 Listen 80 – слушаем 80-й порт, оставляем неизменным стр.116 LoadModule rewrite_module modules/mod_rewrite.so – убираем # вначале строки, т.е. подключаем модуль. стр.170 ServerName 127.0.0.1 стр.177 DocumentRoot "G:\WORK_SERVER\websites" – папка хранения сайтов (к ней будет обращаться сервер при вызове http://localhost) . стр.204-232 <Directory "G:\WORK_SERVER\websites"> - корневая директория # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.2/mod/core.html#options # for more information. # Options Indexes FollowSymLinks
# # 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 All – разрешаем конфигурирование сервера с помощью .htaccess
# # Controls who can get stuff from this server. # Order allow,deny Allow from all
Распаковываем архив в G:\WORK_SERVER\php Теперь подключаем PHP к Apache Открываем все тот же httpd.conf
Прописываем папку хранения конфигурационного файла php.ini в первой строке PHPIniDir "G:\WORK_SERVER\php" Далее подключаем модуль php к Apache прописав перед секцией
В секции стр.239-241 <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> Устанавливаем порядок запроса файлов при обращении к директории (сначала будет запрошен index.php, при отсутствии index.html).
После строки 392 #AddHandler cgi-script .cgi Дописываем AddHandler cgi-script .cgi .pl .py AddType application/x-httpd-php .php .php5 .phtml Чем укажем, что файлы .php обрабатываются именно как php.
Переименовываем файл G:\WORK_SERVER\php\php.ini-dist в php.ini тем самым создав файл конфигурации PHP.
Теперь создадим файл info.php со следующим содержимым
<?php phpinfo(); ?> положим его в G:\WORK_SERVER\websites Перезапустим Apache и обратимся http://localhost/info.php Если мы увидели сводную таблицу данных сервера то PHP подключен правильно.
Теперь сконфигурируем сам PHP Откроем файл конфигурации PHP G:\WORK_SERVER\php\php.ini стр.486 extension_dir = "G:/WORK_SERVER/php/ext" – определили папку с расширениями PHP
Раскомментируем (уберем точку с запятой вначале) стр.611 extension=php_gd2.dll стр.625 extension=php_mysql.dll На этом собственно настройка PHP закончена.
Осталось установить MySQL Установка MySQL сводится к нескольким нажатиям на кнопку Далее в win-инсталляторе. Выбираем Custom установку где указываем папку для установки G:\WORK_SERVER\mysql Далее при завершении установки ставим галку в чекбоксе Configure MySQL server now и переходим к процедуре настройки сервера. Опишу кратко каждый из шагов
1. Detailed Configuration 2. Developer Machine 3. Non-Transactional database only 4. Decision Support 5. Enable TCP/IP, Enable Strict Mode, 3306, Add firewall exception. 6. Best Support for Multilingualism 7. Install as Windows Service 8. Modify security settings вводим и подтверждаем пароль для пользователя root. 9. Жмем Execute и ждем пока конфигурирование выполнится. Вот собственное и все юзаем
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии Поделиться… Комментарии 5 comments posted Apache для Apache для x64 (httpd-2.2.19-win64.rar) (скачан по вашей ссылке) - работает. MySQL для x64 (mysql-5.0.95-winx64.zip) (скачан по вашей ссылке) - как бы работает, по крайней мере ждёт клиентов на порту 3306. PHP для x64 (php-5.2.5-x64-2007-11-12.zip) найден на другом серваке, т.к. по вашей ссылке его нет - работает НО.... Вместо G:\WORK_SERVER\ всё установлено в D:\WWW\ В php.ini стоит extension_dir = "D:\WWW\PHPx64\ext" и раскоментированы только две строки расширений: extension=php_gd2.dll и extension=php_mysql.dll
При рестарте апача php_mysql.dll (51712 байт, версия 5.2.5.5) подгружаться ни в какую не хочет, хотя в папке ext она есть. Причём в этой же папке есть и php_gd2.dll (1 042 432 байт, версия 5.2.5.5), который успешно подгружается. Вот что в логе:
[Thu Mar 01 16:16:51 2012] [notice] Parent: Received restart signal -- Restarting the server.
[Thu Mar 01 16:16:51 2012] [notice] Child 900: Exit event signaled. Child process is ending.
PHP Warning: PHP Startup: Unable to load dynamic library 'D:\\WWW\\PHPx64\\ext\\php_mysql.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r\n in Unknown on line 0
[Thu Mar 01 16:16:51 2012] [notice] Apache/2.2.19 (Win64) PHP/5.2.5 (x64) configured -- resuming normal operations
[Thu Mar 01 16:16:51 2012] [notice] Server built: May 28 2011 15:18:56
[Thu Mar 01 16:16:51 2012] [notice] Parent: Created child process 1120
PHP Warning: PHP Startup: Unable to load dynamic library 'D:\\WWW\\PHPx64\\ext\\php_mysql.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.\r\n in Unknown on line 0
[Thu Mar 01 16:16:51 2012] [notice] Child 1120: Child process is running
[Thu Mar 01 16:16:52 2012] [notice] Child 1120: Acquired the start mutex.
[Thu Mar 01 16:16:52 2012] [notice] Child 900: Released the start mutex
[Thu Mar 01 16:16:52 2012] [notice] Child 1120: Starting thread to listen on port 80.
[Thu Mar 01 16:16:53 2012] [notice] Child 900: All worker threads have exited.
[Thu Mar 01 16:16:53 2012] [notice] Child 900: Child process is exiting
Эти спецсимволы я то перевёл...
PHP Warning: PHP Startup: Unable to load dynamic library 'D:\WWW\PHPx64\ext\php_mysql.dll' - Не найден указанный модуль. in Unknown on line 0
По этому пути данный файл есть 100% ! Права у gd2.dll и у php_mysql.dll - одинаковые, полный доступ. Я уже не знаю что и делать, буду дальше гуглить.
***
add
Решить проблему удалось копированием в system32 файла libmysql.dll из корня пхп. Почему в пхп папке не видится длл - хз, главное что работает
ps: у кого при запуске "The requested operation has failed!" - откройте лог-файл (который вы прописали в httpd.conf в строке ErrorLog) и посмотрите в чем проблема. Или запустите апач с командной строки, перейдя в папку апача httpd -k start
Posted by Mips on Чт, 03/01/2012 - 16:15 Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии пхп отказывается подгружать mysql!!! спасибо за статью... но все бы было замечательно, если бы не проблема с mysql библиотекой.... пхп отказывается ее напрочь подгружать, при этом и апача, пхп и скл работают.... нет ли мыслей по этому поводу??
Posted by skruglikov on Чт, 07/28/2011 - 17:48 Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии путь к модулю в конфиге путь к модулю в конфиге прописан? mysql точно работает и слушает интерфейс? phpinfo что говорит о загруженных модулях?
Posted by nomoo on Пт, 07/29/2011 - 12:09 Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии The requested operation has failed! Сделал всё по мануалу. после рестарта apache вообще перестал грузиться. Пишет - The requested operation has failed!
Posted by gersh2003 on Чт, 02/24/2011 - 23:43 Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии Re: The requested operation has failed! После какой операции такое появилось?
В данный момент идёт обработка статьи об установке свежих версии apache+mysql+php 64 бит
Posted by nomoo on Пт, 02/25/2011 - 16:01 C уважением Некий Tomsik aka Мурзилка А у вас есть ручка за 2.50?
"...Совет перевести на русский язык комментарии в httpd.conf действительно помог почувствовать себя несколько бодрее. Спешу поделиться своим опытом в этой области... Действительно, когда пробегаешь текст [httpd.conf - dk] налегке, многие детали ускользают. ... Поскольку мой httpd.conf давно и безнадежно переделан, я занялся переводом httpd.conf.default, хотя, кажется, они в чем-то различаются с исходным httpd.conf."
Спешу заметить, что настройки (строки вне комментариев) в приведенном ниже файле httpd.conf являются настройками сервера по умолчанию, и поэтому сильно зависят, к примеру, от той директории, в которую вы поставили сервер. Они приведены здесь скорее для примера. В этой связи прошу вас не копировать директивы "один-в-один" в ваш настоящий httpd.conf, особенно если вы еще не до конца осознали, что эти директивы делают.
# Основан на конфигурационных файлах сервера NSCA, написанных by Rob McCool. # # Это главный файл конфигурации сервера Apache, содержащий директивы, # управляющие работой сервера. За детальной информацией об этих директивах, # обращайтесь по адресу <URL:http://www.apache.org/docs/> # # Не стоит читать эти директивы без понимания их роли. Они приведены здесь # лишь в качестве примера одного из возможных вариантов. В случае сомнений # обращайтесь к сопровождающей документации. Считайте, что вас предупредили. # # После обработки этого файла сервер попробует найти и обработать файлы # C:/Program Files/Apache Group/Apache/conf/srm.conf, а затем # C:/Program Files/Apache Group/Apache/conf/access.conf # если вы не переопределили эти имена директивами ResourceConfig и/или # AccessConfig. # # Директивы конфигурации сгруппированы в три основных раздела: # # 1. Директивы, управляющие процессом Apache в целом (глобальное окружение). # 2. Директивы, определяющие параметры "главного" сервера, или сервера "по # умолчанию", который отвечает на запросы, которые не обрабатываются # виртуальными хостами. Эти директивы определяют также установки по # умолчанию для всех остальных виртуальных хостов. # 3. Установки для виртуальных хостов, позволяющие обрабатывать запросы Web # одним-единственным сервером Apache, но направлять по раздельным адресам # IP или именам хостов. # # Файлы конфигурации программы и регистрации событий (конфиги и логи): Если # имена файлов, определенных вами для управления сервером, начинаются с # символа "/" (или "диск:/" для Win32), сервер будет использовать явно # указанный в этом имени полный путь. Если же имена НЕ начинаются с "/", то # для определения пути будет использовано значение директивы ServerRoot – так, # "logs/foo.log" при значении ServerRoot равном "/usr/local/apache" будет # интерпретироваться сервером как "/usr/local/apache/logs/foo.log". # # ВНИМАНИЕ: В определении имен файлов вы ДОЛЖНЫ использовать прямые слэши # вместо обратных (т.е. "c:/apache" вместо "c:\apache"). Если не указано имя # диска, по умолчанию будет использован диск, на котором размещен Apache.exe; # тем не менее, во избежание путаницы, рекомендуется, чтобы вы всегда явно # указывали в абсолютных путях имя диска. #
### Раздел 1: Глобальное окружение # # Директивы в этом разделе определяют общие параметры Apache, как, например, # число запросов, которое он может обрабатывать одновременно, или где ему # искать свои файлы конфигурации. #
# # Директива ServerType может иметь значения inetd или standalone. Режим inetd # поддерживается только на платформах Unix. # ServerType standalone
# # ServerRoot: вершина дерева каталогов, в которых содержатся файлы # конфигурации, регистрации и отслеживания ошибок. # # В конце строки добавлять слэш НЕ СЛЕДУЕТ. # ServerRoot "C:/Program Files/Apache Group/Apache"
# # PidFile: Файл, куда сервер при запуске должен записывать свой номер # идентификации процесса. # PidFile logs/httpd.pid
# # ScoreBoardFile: Учетный файл, используемый для хранения внутренней # информации процесса сервера. Это требуется не всеми архитектурами. Если в # вашей - требуется (об этом можно судить по тому, будет ли создан такой файл, # когда вы запустите Apache), то вы ДОЛЖНЫ обеспечить, чтобы никакие два # экземпляра процесса Apache не использовали бы один и тот же учетный файл. # ScoreBoardFile logs/apache_status
# # В стандартной конфигурации сервер обработает при запуске файлы httpd.conf, # srm.conf и access.conf (именно в таком порядке). Последние два файла в # настоящее время поставляются пустыми, поскольку теперь рекомендуется # для простоты, чтобы все директивы держались в одном файле (httpd.conf). # Закомментированные ниже значения встроены в сервер по умолчанию. Если вам # надо указать другие имена файлов, отредактируйте и раскомментируйте их. Если # потребуется, чтобы сервер проигнорировал эти файлы, вы можете указать # значения "/dev/null" (для Unix) или "nul" (для Win32). # #ResourceConfig conf/srm.conf #AccessConfig conf/access.conf
# # Timeout: Время ожидания в секундах, прежде чем сервер примет или отправит # сообщение о тайм-ауте. # Timeout 300
# # KeepAlive: Позволено или нет устанавливать долговременные соединени # (persistent connections) (т.е. когда обрабатывается более одного запроса на # соединение). Для запрета укажите значение "Off". # KeepAlive On
# # MaxKeepAliveRequests: Максимальное число запросов, допустимое в одном # долговременном соединении. Для снятия ограничений укажите значение 0, но для # максимального быстродействия мы рекомендуем указать заведомо большое # конкретное значение. # MaxKeepAliveRequests 100
# # KeepAliveTimeout: Время ожидания в секундах следующего запроса от одного и # того же клиента в одном подключении. # KeepAliveTimeout 15
# # Для обработки запросов Apache для Win32 всегда порождает один дочерний # процесс. Если он по каким-либо причинам будет преждевременно завершен, # другой дочерний процесс создается автоматически. Поступающие запросы внутри # такого дочернего процесса обрабатываются отдельными потоками. Следующие две # директивы управляют поведением таких потоков и процессов. #
# # MaxRequestsPerChild: Число запросов, которое позволено обрабатывать # дочернему процессу до переполнения. При переполнении дочерний процесс будет # принудительно завершен, чтобы избежать проблем при длительной непрерывной # работе, если Apache (или используемые им библиотеки), допускают утечку # памяти или других ресурсов. На большинстве систем это не требуется, но # некоторые (например, Solaris) страдают заметными утечками в библиотеках. # Если нет других рекомендаций, для Win32 установите значение 0 (без # ограничений). # MaxRequestsPerChild 0
# # ThreadsPerChild: Число одновременных потоков (т.е. запросов), которое # допускает сервер. Установите это значение в соответствии с требуемой # загрузкой сервера (больше активных запросов одновременно означает, что они # обслуживаются медленнее) и объемом системных ресурсов, который вы можете # предоставить серверу. # ThreadsPerChild 50
# # Listen: Позволяет привязать Apache к конкретному адресу IP, и/или порту, в # дополнение к порту, определенному по умолчанию. См. также директиву # <VirtualHost>. # #Listen 3000 #Listen 12.34.56.78:80
# # BindAddress: Этой опцией вы можете обеспечить поддержку виртуальных хостов. # Данная директива используется для указания серверу адреса IP, который # необходимо отслеживать. Она может содержать "*", адрес IP или полное имя # домена Интернет. См. также директивы <VirtualHost> и Listen. # #BindAddress *
# # Поддержка динамически разделяемых объектов (DSO, Dynamic Shared Object) # # Для того чтобы иметь возможность использовать модуль, созданный как # библиотека DSO, вам следует поместить в этом месте соответствующую строку # 'LoadModule' чтобы он был доступен ПРЕЖДЕ обращения к нему. За детальными # разъяснениями механизмов DSO вы можете обратиться к файлу README.DSO в # дистрибутиве Apache 1.3, а также выполнить команду 'apache -l', чтобы # получить список уже встроенных (статически скомпонованных и таким образом # всегда доступных) модулей сервера Apache. # # Внимание: Порядок, в котором загружаются модули, имеет большое значение. Не # меняйте нижеследующий порядок без консультации со специалистом. # #LoadModule anon_auth_module modules/ApacheModuleAuthAnon.dll #LoadModule cern_meta_module modules/ApacheModuleCERNMeta.dll #LoadModule digest_module modules/ApacheModuleDigest.dll #LoadModule expires_module modules/ApacheModuleExpires.dll #LoadModule headers_module modules/ApacheModuleHeaders.dll #LoadModule proxy_module modules/ApacheModuleProxy.dll #LoadModule rewrite_module modules/ApacheModuleRewrite.dll #LoadModule speling_module modules/ApacheModuleSpeling.dll #LoadModule status_module modules/ApacheModuleStatus.dll #LoadModule usertrack_module modules/ApacheModuleUserTrack.dll
# # Директива ExtendedStatus определяет, будет ли Apache генерировать детальную # информацию о состоянии (ExtendedStatus On), или только общую информацию # (ExtendedStatus Off), при обращении к функции "server-status". Значение по # умолчанию - Off. # #ExtendedStatus On
### Раздел 2: Конфигурация сервера по умолчанию # # Директивы этого раздела устанавливают значения, используемые "главным # сервером", который отвечает на запросы, не обрабатываемые виртуальными # хостами. Эти значения обусловливают также установки по умолчанию для любых # контейнеров <VirtualHost>, которые вы будете определять далее в этом файле. # # Любые из этих директив могут быть включены в контейнер <VirtualHost>; в # таком случае установки по умолчанию будут переопределены ими для этого # виртуального хоста. #
# # Если в директиве ServerType (установленной ранее в разделе "Глобальное # окружение") задано значение "inetd", следующие несколько директив не имеют # никакого эффекта, поскольку их значение определено конфигурацией inetd. # Переходите к директиве ServerAdmin. #
# # Port: Номер порта, к которому подключен сервер. # Port 80
# # ServerAdmin: Ваш адрес, по которому следует направлять сообщения о проблемах # с сервером. Этот адрес появится на некоторых сгенерированных сервером # страницах, таких, как сообщения об ошибках. # ServerAdmin you@your.address
# # Директива ServerName задать имя хоста, возвращаемое клиенту, если это имя # отличается от того имени, которое получила программа (например, используйте # "www" вместо реального имени хоста). # # Внимание: Вы не можете просто выдумывать имена хостов в надежде, что это # сработает. Имя, которое вы определяете здесь, должно быть действительным # именем DNS для вашего хоста. Если вы ничего не поняли, справьтесь у # администратора сети. # Если ваш хост не имеет зарегистрированного имени DNS, вы можете указать # здесь его адрес IP. В таком случае вам придется обращаться к нему по адресу # (например, http://123.45.67.89/) и это может сильно осложнить переадресацию # ресурсов. # #ServerName new.host.name
# # DocumentRoot: Каталог, в котором будут находиться ваши документы (т.е. Web- # страницы). По умолчанию, все запросы выбираются из этого каталога; для # указания же других мест могут использоваться символические ссылки (линки) и # псевдонимы (алиасы). # DocumentRoot "C:/Program Files/Apache Group/Apache/htdocs"
# # Каждый каталог, к которому Apache имеет доступ, может быть сконфигурирован в # отношении свойств и сервисов, которые могут быть разрешены и/или запрещены в # этом каталоге (и его подкаталогах). # # Сначала мы определяем свойства "по умолчанию" как весьма ограниченный набор # разрешений. # <Directory /> Options FollowSymLinks AllowOverride None </Directory>
# # Обратите внимание, что с этого места и далее вы должны явным образом # указывать свойства, которые могут быть разрешены, – так что если что-то не # работает так, как вы ожидаете, сначала убедитесь, что вы разрешили это # свойство ниже. #
# # Здесь должен быть указан каталог, который вы установили как DocumentRoot. # <Directory "C:/Program Files/Apache Group/Apache/htdocs">
# # Опции могут иметь значения "None", "All" или любую комбинацию из "Indexes", # "Includes", "FollowSymLinks", "ExecCGI", или "MultiViews". # # Обратите внимание, что "MultiViews" должен быть указан отдельно - # "Options All" для этого не достаточно. # Options Indexes FollowSymLinks MultiViews
# # Эта директива перечисляет опции, которые могут быть переопределены в файлах # .htaccess. Значением может быть "All", или любая комбинация из "Options", # "FileInfo", "AuthConfig", и "Limit" # AllowOverride None
# # Эти директивы определяют, кто может получать что бы то ни было с этого # сервера. # Order allow,deny Allow from all </Directory>
# # UserDir: Название каталога, которое прибавляется к именам пользовательских # домашних каталогов при получении запроса ~user (напр. # "http://www.server.com/~username"). # # Под Win32 мы в настоящее время не пытались устанавливать каталог регистрации # пользователя, поэтому приходится пользоваться форматом, приведенным ниже. # UserDir "C:/Program Files/Apache Group/Apache/users/"
# # DirectoryIndex: Имя файла (или файлов), используемое в качестве # предопределенной страницы-указателя или оглавления. Если вы указываете # несколько имен, разделяйте их пробелами. # DirectoryIndex index.html
# # AccessFileName: Имя файла, который сервер ищет в каждом каталоге для # определения прав доступа. # AccessFileName .htaccess
# # Следующие строки предотвращают доступ к файлам .htaccess со стороны Web- # клиентов. Поскольку файлы .htaccess нередко содержат информацию об # аутентификации, доступ к ним запрещен из соображений безопасности. Вы можете # закомментировать эти строки, если допускаете, чтобы посетители могли # просматривать содержимое файлов .htaccess из Web. Если вы поменяете значение # директивы AccessFileName выше, не забудьте внести и сюда соответствующие # изменения. # <Files .htaccess> Order allow,deny Deny from all </Files>
# # CacheNegotiatedDocs: По умолчанию с каждым документом Apache отправляет # инструкцию "Pragma: no-cache", что является указанием proxy-серверам не # кэшировать данный документ. Если раскомментировать следующую строку, то # поведение proxy-серверов изменится и им будет разрешено кэшировать # документы. # #CacheNegotiatedDocs
# # UseCanonicalName: (впервые в версии 1.3) Если эта директива включена ("On"), # то всякий раз, когда Apache требуется создать ссылку на самого себя (self- # referencing URL, т.е. адрес сервера, с которого поступает ответ на запрос), # для формирования "канонического имени" он будет использовать значения # директив ServerName и Port, когда это возможно. Если директива выключена # ("Off"), Apache будет по возможности использовать значения, предоставленные # клиентом. Эта директива влияет также на значения переменных SERVER_NAME и # SERVER_PORT в CGI-скриптах. # UseCanonicalName On
# # Директива TypesConfig описывает расположение файла mime.types (или его # эквивалента). # TypesConfig conf/mime.types
# # Директива DefaultType определяет MIME-тип, который будет использоваться для # какого-либо документа, если сервер не сможет определить его по иным # признакам, например по расширению имени файла. Если ваш сервер содержит по # большей части тексты или HTML-документы, "text/plain" является приемлемым # решением. Если большая часть содержимого является исполняемыми файлами или # изображениями, вы можете поменять значение на "application/octet-stream", # чтобы предотвратить попытку браузера показать содержимое двоичного файла. # DefaultType text/plain
# # Модуль mod_mime_magic позволяет серверу использовать разнообразные приемы # определения типа файла по его содержимому. Директива MIMEMagicFile указывает # ему файл, где даны дефиниции таких приемов. По умолчанию mod_mime_magic не # включен в состав сервера (вы должны загрузить его сами с помощью директивы # LoadModule - см. абзац DSO в разделе "Глобальное окружение", - или заново # откомпилировать сервер с этим модулем), поэтому директива MIMEMagicFile # заключена в контейнер <IfModule>. Это означает, что она будет обработана # только если модуль mod_mime_magic уже загружен. # <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule>
# # Директива HostnameLookups определяет, регистрировать ли клиентов по именам, # или только по адреса IP, т.е. www.apache.org ("On") или 204.62.129.132 # ("Off"). По умолчанию – "Off", поскольку для снижения нагрузки на сеть было # бы лучше, если бы вы использовали эту возможность, зная о последствиях, т.к. # отслеживание по именам означает, что каждый клиентский запрос приведет КАК # МИНИМУМ к еще одному запросу к серверу имен для преобразования адреса IP # в имя. # HostnameLookups Off
# # ErrorLog: Расположение файла регистрации ошибок. Если вы НЕ определяете # директиву ErrorLog внутри контейнера <VirtualHost>, сообщения об ошибках # будут записаны сюда. Если же определяете, они будут записаны там, а здесь – # нет. # ErrorLog logs/error.log
# # LogLevel: Определение характера ошибок, которые записываются в error.log. # Возможные значения в порядке убывания количества сообщений: debug, info, # notice, warn, error, crit, alert, emerg. # LogLevel warn
# # Следующие директивы определяют псевдонимы некоторых форматов, которые # используются в директиве CustomLog (см. ниже). # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent
# # Расположение и формат файла регистрации (лога). Если вы не определяете # никаких лог-файлов внутри контейнера <VirtualHost>, сведения будут # записываться здесь. Если же вы определяете отдельный лог-файл для # виртуального хоста, доступ будет отслеживаться там, но не здесь. # CustomLog logs/access.log common
# # Если вы хотите, чтобы был агент ссылочных логов (referer logfiles agent), # раскомментируйте следующие директивы. # #CustomLog logs/referer.log referer #CustomLog logs/agent.log agent
# # Если вы предпочитаете иметь один лог-файл с информацией о доступе, агентах и # ссылках (комбинированный формат лог-файла), вы можете использовать следующую # директиву. # #CustomLog logs/access.log combined
# # Добавить дополнительную строку, содержащую версию сервера и имя виртуального # хоста на страницах, сгенерированных сервером (сообщениях об ошибках, # листингах каталогов FTP, вывод модулей mod_status и mod_info, но не в CGI- # документах). Чтобы дополнительно включить ссылку mailto:, содержащую # значение директивы ServerAdmin, установите значение "EMail". # Допустимые значения: On | Off | Email # ServerSignature On
# # Псевдонимы (алиасы): Можно добавлять любое количество псевдонимов (без # ограничений). # Формат: Alias псевдоним действительное_имя # # Обратите внимание, что если вы включаете завершающий слэш в "псевдоним", то # сервер потребует его присутствия и в URL. Так, "/icons" не будет разыменован # в данном примере, только "/icons/". # Alias /icons/ "C:/Program Files/Apache Group/Apache/icons/"
# # ScriptAlias: Указывает каталог, который содержит серверные скрипты. Свойства # ScriptAlias-ов такие же, как и у просто Alias-ов, кроме того, что документы # в каталоге "действительное_имя" считаются приложениями и выполняются на # сервере, а не отправляются клиенту. К директиве ScriptAlias применяются те # же правила в отношении завершающего "/", что и к Alias. # ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/"
# # Значение "C:/Program Files/Apache Group/Apache/cgi-bin" следует заменить на # путь к каталогу CGI, если у вас такой есть. # <Directory "C:/Program Files/Apache Group/Apache/cgi-bin"> AllowOverride None Options None </Directory>
# # Директива Redirect позволяет сообщить клиенту о документе, который # существовал некогда в именном пространстве сервера, но был перемещен в # другое место. Она позволяет сообщить клиенту его новый адрес. # # Формат: Redirect старый_URL новый_URL #
# # FancyIndexing означает, что вы предпочитаете листинги с украшениями. О # других возможных значениях директивы IndexOptions см. сопровождающую # документацию. # IndexOptions FancyIndexing
# # Директивы AddIcon* указывают серверу, какими иконками украшать имена файлов # в листинге каталога. Иконки изображаются только в режиме FancyIndexing. # AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
# # DefaultIcon указывает, какой иконкой следует украшать файлы, для которых # иконка не задана явно. # DefaultIcon /icons/unknown.gif
# # AddDescription позволяет размещать краткое описание после имени файла в # индексах (листингах каталогов), сгенерированных сервером. Такие описания # выводятся только в режиме FancyIndexing. # Формат: AddDescription "строка_описания" .расширение_имени_файла # #AddDescription "GZIP compressed document" .gz #AddDescription "tar archive" .tar #AddDescription "GZIP compressed tar archive" .tgz
# # ReadmeName задает имя README-файла, который добавляется к листингу каталога # по умолчанию. # # HeaderName указывает имя файла, который будет выводиться в заголовке # листингов каталога. # # Сначала сервер попытается открыть файл имя.html, и включит его в листинг, # если он существует. Если файл имя.html не существует, сервер попытается # открыть файл имя.txt и включить его в виде простого текста. # ReadmeName README HeaderName HEADER
# # IndexIgnore представляет набор имен файлов, которые должны быть исключены из # листинга. В именах допустимы метасимволы подстановки в стиле shell. # IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
# # AddEncoding позволяет вам заставить определенные браузеры (Mosaic/X 2.1+) # распаковывать информацию "на лету". Внимание: это свойство поддерживают не # все браузеры. Несмотря на сходство имен, нижеприведенные директивы Add* не # имеют ничего общего с директивами оформления FancyIndexing, приведенными # выше. # AddEncoding x-compress Z AddEncoding x-gzip gz tgz
# # AddLanguage позволяет указать язык документа. Вы можете затем использовать # протокол обмена (content negotiation) для выдачи браузеру документа на том # языке, который он (браузер) предпочитает. # # Примечание 1: Суффикс не обязательно должен совпадать с буквенным кодом # языка – те, у кого есть документы на польском языке (стандартный сетевой # буквенный код pl), могут воспользоваться директивой "AddLanguage pl .po" во # избежание конфликта с распространенным суффиксом скриптов на языке Perl. # # Примечание 2: Нижеследующие примеры показывают, что в нескольких случаях # двухбуквенный код языка не совпадает с двухбуквенным кодом страны. # Например, 'Датский/da' вместо 'Дания/dk'. # # Примечание 3: В случае 'ltz' мы нарушаем требования RFC, используя # трехбуквенный код. Как говорится, "работа продолжается", и возможно, # несоответствия с rfc1766, будут устранены. # # Коды языков: # датский (Danish) da; голландский, Нидерланды (Dutch) nl; # английский (English) en; эстонский (Estonian) ee; французский (French) fr; # немецкий (German) de; новогреческий (Greek-Modern) el; итальянский (Italian) it; # португальский (Portuguese) pt; люксембургский (Luxembourgeois*) ltz; # испанский (Spanish) es; шведский (Swedish) sv; каталанский (Catalan) ca; # чешский (Czech) cz; русский (Russian) ru. # AddLanguage da .dk AddLanguage nl .nl AddLanguage en .en AddLanguage et .ee AddLanguage fr .fr AddLanguage de .de AddLanguage el .el AddLanguage it .it AddLanguage pt .pt AddLanguage ltz .lu AddLanguage ca .ca AddLanguage es .es AddLanguage sv .se AddLanguage cz .cz AddLanguage ru .ru
# LanguagePriority позволяет определить первоочередность некоторых языков при # установлении протокола обмена. # # Возможно, вы захотите изменить предложенный порядок языков. Просто # перечислите их в порядке убывания приоритета. # LanguagePriority ru en fr de it da nl cz es pt sv el et ltz ca
# # AddType позволяет слегка подправить mime.types, не редактируя его, или # объявить определенные файлы имеющими определенный тип. # # Например, модуль PHP3 (этот модуль не является частью дистрибутива сервера # Apache), обычно использует следующие объявления: # #AddType application/x-httpd-php3 .phtml #AddType application/x-httpd-php3-source .phps
AddType application/x-tar .tgz
# # AddHandler позволяет отобразить определенные расширения имен файлов на # обработчиков вне связи с определениями типов файлов. Обработчики могут быть # как встроенные в сервер, так и объявленные директивой Action (см. ниже). # # Если вы хотите использовать файлы, вставляемые сервером в ваши документы # (инклюды или SSI - server side includes) раскомментируйте следующие строки. # # Для использования скриптов CGI: # #AddHandler cgi-script .cgi
# # Для использования HTML-файлов, предварительно обрабатываемых сервером # (server-parsed HTML files): # #AddType text/html .shtml #AddHandler server-parsed .shtml
# # Раскомментируйте следующую строку, чтобы разрешить Apache передачу # специальных файлов, которые не сопровождаются стандартными заголовками HTTP # (send-asis HTTP file). # #AddHandler send-as-is asis
# # Если вы хотите использовать карты-изображения, обрабатываемые сервером, # используйте следующую директиву: # #AddHandler imap-file map
# # Если вы хотите задействовать карты типов (type maps, см. документацию), # используйте: # #AddHandler type-map var
# # Директива Action позволяет определить приложение, выполняющее скрипты, когда # запрашиваются содержащие их файлы. Это устраняет необходимость многократного # упоминания URL часто используемых процессоров CGI-скриптов. # Формат: Action псевдоним_типа /псевдоним_пути/обработчик # Action среда/тип /псевдоним_пути/обработчик #
# # MetaDir: определяет имя каталога, в котором Apache может найти файлы с # метаинформацией. Эти файлы содержат дополнительные заголовки HTTP, # включаемые при отправке определенных документов. # #MetaDir .web
# # MetaSuffix определяет суффикс имени файла, содержащего метаинформацию. # #MetaSuffix .meta
# # Настраиваемая реакция на ошибки (собственный стиль Apache) может быть трех # типов. # # 1) простой текст # ErrorDocument 500 "Сервер сказал а-я-яй! # N.B.: знак двойной кавычки просто означает, что далее следует текст. # # 2) локальная переадресация # Чтобы перенаправить на локальный документ: # ErrorDocument 404 /missing.html # Перенаправлять можно и на скрипт, и на документ, использующий # серверные инклюды: # ErrorDocument 404 /cgi-bin/missing_handler.pl # # 3) внешняя переадресация # ErrorDocument 402 http://some.other_server.com/subscription_info.html # N.B.: Большинство переменных окружения, связанных с исходным запросом # станут НЕ ДОСТУПНЫ при такой переадресации.
# # Следующие директивы отменяют поддержку долговременных соединений # (keepalives) и смывание заголовков HTTP. Первая директива отменяет их для # Netscape 2.x и браузеров, которые притворяются, что они Netscape – известны # некоторые проблемы с такими браузерами. Вторая директива предназначена для # Microsoft Internet Explorer 4.0b2, реализация HTTP/1.1 которого не полна, и # не поддерживает должным образом keepalive, когда он используется в откликах # 301 или 302 (переадресация). # BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
# # Следующая директива отключает отклики по HTTP/1.1 браузерам, которые # нарушают стандарты HTTP/1.0 и не могут разобрать основной отклик 1.1. # BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0
# # Следующая группа директив управляет отчетами о состоянии сервера, имеющего # URL http://servername/server-status. Для приведения в соответствие с вашими # нуждами, замените ".your_domain.com". # #<Location /server-status> # SetHandler server-status # Order deny,allow # Deny from all # Allow from .your_domain.com #</Location>
# # Следующая группа директив управляет отчетами конфигурации удаленного сервера # http://servername/server-info (требуется, чтобы был загружен mod_info.c). # Замените ".your_domain.com" на имя вашего домена. # #<Location /server-info> # SetHandler server-info # Order deny,allow # Deny from all # Allow from .your_domain.com #</Location>
# # Поступали сообщения, что некие люди пытаются злоупотреблять древней ошибкой # пред-1.1-й эры. Ошибка касалась CGI-скрипта, поставлявшегося с Apache. # Раскомментировав следующие строки, вы можете переадресовать эти атаки на # регистрирующий скрипт на phf.apache.org. А можете регистрировать их сами, # используя скрипт support/phf_abuse_log.cgi. # #<Location /cgi-bin/phf*> # Deny from all # ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi #</Location>
# # Директивы proxy-сервера. Раскомментируйте следующую строку для того, чтобы # разрешить работу с proxy. # #ProxyRequests On
# # Разрешить/запретить обработку заголовков HTTP/1.1 "Via:". # Возможные значения: Off | On | Full | Block. "Full" добавляет в заголовок # версию сервера, "Block" удаляет все исходящие заголовки "Via:". # #ProxyVia On
# # Для разрешения также кэширования, отредактируйте и раскомментируйте # следующие строки (нельзя включать кэширование без указания CacheRoot): # #CacheRoot "C:/Program Files/Apache Group/Apache/proxy" #CacheSize 5 #CacheGcInterval 4 #CacheMaxExpire 24 #CacheLastModifiedFactor 0.1 #CacheDefaultExpire 1 #NoCache a_domain.com another_domain.edu joes.garage_sale.com
### Раздел 3: Виртуальные хосты # # Директива VirtualHost: Если вы хотите держать на своей машине несколько # хостов, следует для каждого из них завести контейнер VirtualHost. Прежде чем # их устанавливать, обращайтесь за подробными разъяснениями к документации по # адресу http://www.apache.org/docs/vhosts/. Для проверки конфигурации ваших # виртуальных хостов, вы можете использовать опцию '-S' командной строки.
# # Если вы хотите использовать именные виртуальные хосты (name-based virtual # hosts), вам необходимо определить для них как минимум один адрес IP (и номер # порта). # #NameVirtualHost 12.34.56.78:80 #NameVirtualHost 12.34.56.78
# # Пример использования директивы VirtualHost: # В контейнере VirtualHost может использоваться почти любая директива Apache. # #<VirtualHost ip.address.of.host.some_domain.com> # ServerAdmin webmaster@host.some_domain .com # DocumentRoot /www/docs/host.some_domain.com # ServerName host.some_domain.com # ErrorLog logs/host.some_domain.com-error_log # CustomLog logs/host.some_domain.com-access_log common #</VirtualHost>
Установка Web-сервера Apache в связке с PHP 5 и MySQL (Apache+PHP+MySQL) Авторы - Симдянов И.В., Голышев С.В., Кузнецов М.В.
В этой статье мы рассмотрим установку и настройку Web-сервера Apache, PHP 5 и СУБД MySQL для использования их на локальной машине под операционной системой Windows (2000 и XP). Использование локальных серверов может понадобится по многим причинам – вам необходимо изучить PHP или MySQL, а тестирование своих Web-приложений на хостинге либо дорого обходится, либо такой возможности вообще нет. В этом случае вам понадобится связка Apache+PHP+MySQL на локальной машине.
Для начала необходимо раздобыть дистрибутивы серверов Apache и MySQL, а так же архив PHP. Мы будем устанавливать и настраивать Apache 2, MySQL 4 и PHP 5.
Так же можете скачать с нашего сайта файлы php.ini для настройки PHP и httpd.conf для Apache. Однако, делайте это только в крайнем случае — если у Вас ничего не получилось с "родными" файлами, которые появилиcь при установке приложений. Но в любом случае, их необходимо будет настроить под конкретную машину. Скачать php.ini и httpd.conf
Скачать Apache можно с зеркал приведённых на официальном сайте http://www.apache.org/dyn/closer.cgi. При поиске следует помнить, что Apache так же может называться httpd, по имени его демона в UNIX. На зеркалах обычно много различных файлов, например: httpd-2.0.49-win32-src.zip - это архив с исходными кодами (src) для Windows (win32) Web-сервера Apache (httpd) версии 2.0.49. httpd-2.0.49.tar.gz - тоже самое, но для Linux, в котором программы принято распространять в исходных кодах. apache_2.0.50-win32-x86-no_ssl.exe - а вот это, откомпилированный под архитектуру (x86) для Windows (win32) без поддержки SSL(no_ssl) сервер Apache (apache) версии 2.0.50 - вот он и нужен.
Замечание Бинарные коды дистрибутивов Apache распространяются в нескольких вариантах, как с расширением *.exe, так и *.msi и имеют название вида httpd_версия_win32_*_.msi.
Чтобы вам не мучатся, вот ресурс где можно его взять: http://apache.rinet.ru/dist/httpd/binaries/win32/ Вторая и третья цифра в версии могут отличаться от приведённых здесь – следует выбирать самую последнюю версию, так как в ней устранены ошибки обнаруженные в предыдущих версиях.
PHP 5 можно загрузить из раздела Дистрибутивы нашего сайта.
Скачать PHP 5.x
Русский мануал по PHP можно скачать по ссылке (http://www.softtime.ru/info/php_ru.php).
Дистрибутив MySQL можно загрузить со страницы Дистрибутивы нашего сайта.
После того как мы запаслись всеми необходимыми дистрибутивами можно приступать к установке. Порядок установки Apache, PHP и MySQL не имеет значения. Начнём с Web-сервера Apache.
Установка Web-сервера Apache Запустите установщик Web-сервера Apache. Результатом будет окно с лицензионным соглашением, после принятия которого, следует перейти к следующему окну с краткой информацией о нововведениях во второй версии Apache. Следующее окно, показанное на рисунке, позволяет ввести информацию о сервере: доменное имя сервера, имя сервера и адрес электронной почты администратора. Если установка происходит на локальную машину, то в поля для доменного имени и имени сервера следует ввести localhost (см. рисунок.). В нижней части окна предлагается выбрать номер порта по которому сервер будет принимать запросы (80 или 8080).
localhost - это имя для использования сервера на локальной машине, которое связано с IP-адресом 127.0.0.1, который зарезервирован для локального использования.
После этого будет предложен способ установки: стандартный (Typical ) или выборочный (Custom), позволяющий выбрать компоненты сервера вручную. Следующее окно позволяет выбрать каталог установки сервера, по умолчанию это C:Program FilesApache Group, но мы рекомендуем выбрать другой каталог, например, С:www. После этого мастер установки сообщит о готовности к процессу установки и после нажатия кнопки Install, будет произведено копирование файлов сервера. Если установка прошла успешно, Windows автоматически запустит Apache.
Теперь необходимо научиться управлять Apache, а именно научится запускать, останавливать и перезапускать сервер. Существует много способов осуществить эти операции: при помощи утилиты ApacheMonitor, используя консоль управления сервисов Windows, используя пункты меню Пуск, из командной строки… Мы рассмотрим консоль управления сервисов Windows, позволяющего настроить Apache для автоматического старта при запуске системы. Для запуска консоли управления выполните команду Пуск->Настройка->Панель управления->Администрирование->Службы. В появившемся окне консоли, на приведённом ниже рисунке, следует выбрать сервис Apache2. Контекстное меню, открывающееся по нажатию на правой кнопке, позволяет осуществлять запуск, остановку и перезапуск сервиса.
Службы Windows позволяют осуществлять запуск фоновых приложений при старте системы. Для этого необходимо перейти в окно Свойства, выбрав в контекстном меню сервиса пункт Свойства и в появившемся окне в выпадающем списке "Тип запуска" выбрать пункт "Авто".
Конфигурирование Apache Web-сервер — сложный программный продукт работающий на разных платформах и в разных операционных системах по всему миру. Поэтому для корректной работы на установленной системе его необходимо настроить (сконфигурировать). По умолчанию настройки Apache расположены в файле httpd.conf в директории conf. Далее будут описаны основные директивы файла httpd.conf и их общеупотребительные значения.
Пути к файлам В конфигурационных файлах Apache и PHP Вам часто придется указывать пути к различным директориям и папкам. В операционных системах UNIX и Windows при-меняются различные разделители каталогов. В UNIX используется прямая косая черта "/", например /usr/bin/perl, в в Windows обратная, например, c:Apachein. Вообще, в некоторых директивах Apache и PHP работают оба вида разделителей каталогов: прямой(/) и обратный(), но так как и Apache и PHP изначально разрабаты-вались под UNIX, то применяя их "родной" формат, Вы сможете избежать ряда проблем. Поэтому пути в настроечных файлах (httpd.conf и php.ini) рекомендуется писать через слеш в формате UNIX — "/". Например:
ScriptAlias "/php_dir/" "c:/php/"
Директивы файла httpd.conf Port Port 80
Устанавливает порт TCP, который используется Apache для установки соединения. По умолчанию используется 80 порт.
Примечание Единственная причина использования нестандартного порта — это отсутствие прав на использование стандартного порта. При использовании нестандартного порта, например, 8080 номер порта следует указывать в адресе, например: http://localhost:8080/.
Содержит e-mail-адрес администратора web-сервера, который будет отображаться при ошибках работы сервера.
ServerName ServerName myserver
Содержит имя компьютера для сервера.
ServerRoot ServerRoot "C:/Apache2"
Указывает на каталог, содержащий файлы WEB-сервера Apache.
Примечание Не путайте директиву ServerRoot с директивой DocumentRoot, которая указывает каталог для файлов WEB-сайта.
DocumentRoot DocumentRoot "C:/Apache2/htdocs"
Определяет каталог, в котором расположены файлы WEB-сайта.
Контейнер <Directory /> Сфера действия директив внутри этого контейнера распространяется на все файлы и подкаталоги внутри DocumentRoot.
<Directory /> Options FollowSymLinks Includes Indexes AllowOverride All </Directory>
· Директива AllowOverride установленная в значение All разрешает переопределять значения главного конфигурационного файла httpd.conf в файлах .htaccess.
Содержит список индексных файлов, которые следует отображать при обращении к директории без указания имени файла (например, http://localhost/test/).
AddDefaultCharset AddDefaultCharset windows-1251
Устанавливает кодировку по умолчанию, если кодировка не установлена в заголовке HTML-документа. Также Вам может потребоваться указывать значение кодировки KOI8-R.
Создание виртуальных хостов На одном WEB-сервере Apache можно установить несколько WEB-сайтов. Эта функция сервера называется виртуальным хостингом. Ниже рассмотрим создание виртуальных узлов на основе имен. Виртуальные узлы обычно расположены в конце файла httpd.conf.
Сначала требуется указать какой IP-адрес используется для виртуальных хостов.
· DocumentRoot указывает каталог, где расположены файлы (странички) данного виртуального узла (WEB-сайта)
· ServerName указывает имя виртуального узла, по которому к нему можно обратиться. В данном случае, по адресу http://www.mysite.ru/.
· ServerAlias содержит псевдонимы имен виртуального узла. В данном случае к виртуальному узлу можно также обратиться, используя имена: http://www.site.ru/ и http://www.host2.ru/.
· ErrorLog и CustomLog указывает имена логов сервера для этого виртуального хоста.
Контейнеры обычно располагают один за другим в конце файла httpd.conf.
Примечание Для применения изменений, вносимых в файл httpd.conf, Apache следует перезагрузить.
Для того, чтобы обращаться к виртуальным узлам по именам их следует прописать в базы данных DNS-сервера. Если Вы используете Apache для тестирования файлов на локальной машине, то имена ваших виртуальных узлов следует прописать в файле hosts. Для Windows 2000 и XP он расположен в каталоге C:WindowSystem32Driversets. Файл hosts содержит записи вида:
Установка и настройка PHP Для установки PHP следует создать каталог c:/php и разместить в нём файлы из zip-архива дистрибутива. После этого следует переименовать конфигурационный файл php.ini-dist в php.ini и скопировать его в директорию Windows.
Далее, необходимо сообщить Web-серверу о наличии установленного PHP. Установка PHP возможна двумя вариантами: как модуль Apache и как внешнее CGI-приложение. Ниже будут рассмотрены оба варианта установки.
Установка PHP в качестве модуля Установка PHP в качестве модуля немного повышает быстродействие, так как модуль PHP загружается один раз при запуске Web-сервера
Замечание При установке PHP в качестве модуля настройки из php.ini читаются один раз при запуске Web-сервера. Поэтому при внесении изменений в php.ini необходимо перегрузить Apache для того, чтобы внесенные изменения вступили в силу.
Для установки PHP откройте файл главный настроечный файл Apache httpd.conf на редактирование и удалите символы комментариев со следующих строк, при необходимости изменив их:
Примечание Вместо директории c:/php подставьте Вашу директорию с установленным PHP.
Установка PHP, как CGI-приложения При установке PHP, как CGI-приложения интерпретатор PHP будет загружаться каждый раз при вызове PHP-сценария. В связи с этим, возможно, некоторое ухудшение быстродействия. Если PHP установлен, как CGI, то при внесении изменений в файл php.ini Apache перезагружать не следует, так как установки читаются каждый раз при выполнении PHP-сценария. Установка PHP как CGI немного ускоряет внесение изменений в конфигурацию PHP, так она не требует перезагрузки WEB-сервера.
Примечание При установке PHP, как CGI перестанут работать некоторые заголовки, например, Вы не сможете организовать авторизацию пользователей средствами PHP. Авторизации можно будет реализовать только средствами самого Apache с помощью файлов .htaccess.
Для установки PHP откройте главный настроечный файл httpd.conf на редактирование, найдите в нем закомментированные строки подключения PHP и измените их следующим образом:
Примечание Вместо директории c:/php подставьте Вашу директорию с установленным PHP.
Конфигурирование PHP (файл php.ini) Так как на локальной машине вы, скорее всего, будете заняты тестированием Ваших Web-приложений, то необходимо должным образом настроить конфигурационный файл php.ini. Найдите директиву error_reporting и установите для неё следующее значение:
error_reporting = E_ALL & ~E_NOTICE
Это значение настроит PHP таким образом, что при работе PHP-скриптов будут отображаться все ошибки, а "замечания" будут игнорироваться. Так же обходимо проследить, чтобы директива display_errors, была включена:
display_errors = On
Если данная директива отключена (Off), то сообщения об ошибках не будут выводится в окно браузера и в случае возникновения в коде ошибки вы будете гадать перед девственно белым окном — что бы это означало. Так же необходимо проследить, чтобы директива variables_order имела следующее значение:
variables_order = "EGPCS"
Буквы здесь означают следующее: E - переменными среды G - переменными передаваемыми по методу GET (G) P - переменными передаваемыми по методу POST (P) C - Cookies S - сессии Отсутствие какой-либо из букв не позволит вам работать с соответствующими переменными.
Следующая директива, которая может потребовать настройки – это register_globals. Если данная директива включена
register_globals = On
то переменные передаваемые метором GET, POST, через cookies и сессии можно использовать в PHP-скрипте, обращаясь к ним просто как обычным переменным $someone. Если данная директива отключена
register_globals = Off
то к таким переменным можно будет обращаться только при помощи суперглобальных массивов ($_POST, $_GET и т.п.). Директива register_long_arrays позволяет использовать суперглобальные массивы в старом формате ("длинном" - $HTTP_GET_VARS, $HTTP_POST_VARS и т.д.)
register_long_arrays = On
Теперь необходимо настроить индексный файл. Если в окне браузера набрать строку http://localhost/, а не http://localhost/index.html. Сервер всё равно предоставит браузеру index.html, так как этот файл является индексным и ищется в директории первую очередь, если не указан конкретный файл. Теперь необходимо настроить http.conf, таким образом, чтобы Web-сервер Apache так же реагировал на файлы index.php. Для этого найдте в http.conf директиву DirectoryIndex и исправьте её следующим образом:
После этого необходимо перегрузить сервер Apache, а в корневой директории виртуального хоста ("C:/www/scripts") создать пробный файл PHP (index.php):
<?php phpinfo(); ?>
В случае успешной настройки, обращение по адресу http://localhost/index.php отобразит фиолетовую таблицу с текущими настройками PHP, которая выдаётся функцией phpinfo(). Таким образом, у нас настроена связка Apache и PHP и можно переходить к настройке MySQL. Распакуйте дистрибутив MySQL во временную директорию и запустите установщик. Контролировать работу сервера MySQL можно точно так же как и Apache, используя консоль управления сервисов Windows.
Подключение MySQL Подробная методика подключения к PHP расширения MySQL описана в статье по ссылке: "Подключение к PHP расширения для работы с MySQL".
Если сервер MySQL уже установлен на Вашей машине, то следующим шагом будет настройка PHP для работы с базами данных MySQL.
Откройте на редактирование файл php.ini из каталога Windows. Для подключения библиотеки расширения MySQL Вам нужно убрать символ комментария ;(точка с запятой) из строки:
extension=php_mysql.dll
Также проверьте значение директивы extension_dir
extension_dir ="c:/php-5.0/ext"
Она должна указывать на каталог, где хранятся расширения PHP. Разделители каталогов рекомендуется писать в формате UNIX (/) — обратный слеш. Однако, если ничего не получается, просто откатите назад значение директивы extension_dir, а библиотеку php_mysql.dll скопируйте в корень C:/php-5.0/ - в большинстве случаев это должно помочь.
Если PHP Вас подключен как модуль, то Вам также необходимо скопировать библиотеку libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32. Чтобы внесенные изменения вступили в силу — перезагрузите Apache.
Для проверки работы MySQL перезапустите сервер Apache и создайте проверочный скрипт со следующим кодом:
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd); if (!$dbcnx) { echo "<p>К сожалению, не доступен сервер mySQL</p>"; exit(); } if (!@mysql_select_db($dbname,$dbcnx) ) { echo "<p>К сожалению, не доступна база данных</p>"; exit(); } $ver = mysql_query("SELECT VERSION()"); if(!$ver) { echo "<p>Ошибка в запросе</p>"; exit(); } echo mysql_result($ver, 0); ?>
В случае успешной интеграции MySQL в связку Apache и PHP, обращение к проверочному скрипту выведет в окно браузера версию сервера MySQL.
В новых версиях MySQL (начиная с 4.1.0) изменился порядок работы с национальными кодировками, поэтому старый код может вызывать появление в таблице базы данных знаков вопроса '????????' вместо русского текста. Для того, чтобы этого не возникало в начало PHP-скрипта, после установки соединения с базой данных, следует поместить следующие строки:
Установка расширений PHP На последок вам возможно понадобится настроить некоторые расширения PHP, они настраиваются точно так же как и MySQL.
Так для того, чтобы подключить графическую библиотеку GDLib в php.ini необходимо раскомментировать строку:
extension=php_gd2.dll
Проверьте после этого наличие данной библиотеки в папке c:phpext. После внесения изменений в php.ini перезапустите сервер. Что бы быстро проверить: подключилась ли библиотека — выполните функцию phpinfo(). Если все в порядке, то в таблице, которая отображается функций phpinfo(), должен появится раздел "gd". Скачать GDLib2
Некоторые расширения требуют дополнительных библиотек. Так для того чтобы воспользоваться расширением PHP "Mcrypt Encryption", позволяющем осуществлять симметричное шифрование необходимо, во первых, расскомментирования строку в php.ini
extension=php_mcrypt.dll
А во вторых скопировать в папку С:/WINDOWS/ дополнительную библиотеку libmcrypt.dll
Типичные вопросы и ошибки Ошибка Internal Server Error при подключении PHP Проверьте, нет ли у Вас ошибок при подключении PHP в httpd.conf.
Особое внимание обратите на имя подключаемого модуля: php-cgi.exe. Для применения изменений, вносимых в файл httpd.conf, Apache следует перезагрузить.
При использовании устаревшего имени php.exe, использовавшегося в более ранних версиях вместо php-cgi.exe также возможно появлении ошибки:
403 Forbidden You don't have permission to access /__php_dir__/php.exe/test.php on this server
HTML-файлы выполняются, а PHP-скрипты нет При ненастроенном подключении PHP при обращении к файлам с расширением php, например: http:/localohost/index.php открывается окно с запрос на загрузку такого файла. Это говорит о том, что не настроена обработка файлов с расширением php. Проверьте в файле httpd.conf существование следующей строки:
AddType application/x-httpd-php phtml php
Notice: Undefined variable... На новом, только что установленном, PHP можно часто видеть сообщения вида:
Notice: Undefined variable: msg in C:/Main/addrec.php on line 7
Это не ошибка — это рекомендации по кодированию, сообщающие о неинициализированных переменных. Следует отключить вывод подобных рекомендаций в файле php.ini. Найдите директиву error_reporting и установите ее значение:
error_reporting = E_ALL & ~E_NOTICE
Не подключается MySQL Иногда возникают проблемы с установкой MySQL. Следует проконтролировать запускается ли MySQL в качестве сервиса каждый раз при старте системы. Для этого откройте консоль сервисов:
Пуск | Настройка | Панель управления | Администрирование | Службы
найдите там MySQL - запустите. Чтобы сервер стартовал при каждой загрузке системы нажмите правую кнопку мыши на сервисе и выберите "Свойства" - в открывшемся выпадающем списке "Тип запуска" выберите пункт "Авто".
Если при запуске Apache и при обращении ко скриптам выдается сообщение о невозможности загрузки библиотеки php_mysql.dll.
PHP startup: Unable to load dynamic library c:/php/ext/php_mysql.dll - не найден указанный модуль
То еще раз сверьтесь с инструкциями из раздела, где описывается подключение к PHP библиотеки для работы с MySQL. Используете ли Вы "правильную" версию файла php_mysql.dll (именно для той версии PHP, которая установлена в системе)? Версии файла php_mysql.dll различаются для разных версий PHP, хотя и имеют одно и тоже название.
Скопирована ли библиотека libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32?
Возможно вам будет интересно почитать темы форума в которых обсуждаются проблемы, возникающие при установке связки MySQL+PHP: www.softtime.ru/forum/read.php?id_forum=1&id_theme=455, www.softtime.ru/forum/read.php?id_forum=1&id_theme=195 www.softtime.ru/forum/read.php?id_forum=1&id_theme=287 Проблемы с руссификацией консоли mysql.exe: www.softtime.ru/forum/read.php?id_forum=1&id_theme=354
Неизвестные ошибки Если все же настроить связку Apache, PHP и MySQL не получается, то причины могут быть в следующем:
· Использование русских буквы в именах директорий прописываемых в настроечных файлах httpd.conf и php.ini.
· Использование пробелов в именах файлов и директории в настроечных файлах. Если в именах файлов и директорий есть пробелы, то их нужно обрамлять кавычками.
· Использование разделителей каталогов формате Windows (обратный слеш): c:apache/bin. Для надежной работы следует использовать разделители в формате UNIX (прямой слеш), например: c:/apache/bin.
· Существование нескольких настроечных файлов php.ini на машине, либо отсутствие такого файла. Нужный файл php.ini должен лежать в директории Windows. Проведите поиск по дискам компьютера, найдите все лишние версии файлов и удалите их.
Любые возникающие по установке связки Apache+PHP+MySQL вопросы вы можете задать на нашем форуме посвященном установке и настройке Apache, PHP и библиотек расширений http://www.softtime.ru/forum/index.php?id_forum=5. C уважением Некий Tomsik aka Мурзилка А у вас есть ручка за 2.50?
povudl http://moisesnaim.com/wp-blog/JVsmpOb.php nike ken chaussures Griffey taille 14 http://moisesnaim.com/wp-blog/OcLrsXE.php nike dunk low jedi sb pro http://moisesnaim.com/wp-blog/JEpshsL.php 3 cs w de salomon http://moisesnaim.com/wp-blog/ThEbsGG.php tom hank http://moisesnaim.com/wp-blog/mzzrTrL.php van hire bristol
<a href="http://moisesnaim.com/wp-blog/QQbkVbh.php">femmes Air Jordans gros</a> <a href="http://moisesnaim.com/wp-blog/GGbpDky.php">nike shox q'vida haute</a> <a href="http://moisesnaim.com/wp-blog/wpccciE.php">nike air max premium</a> <a href="http://moisesnaim.com/wp-blog/LLXwbzp.php">nike pas cher dunk high</a> <a href="http://moisesnaim.com/wp-blog/sEfTQNh.php">nike emplacements de sortie nike magasin de sortie</a>
guxqzs 10800 <a href="http://www.mysitespace.com/occw0dd-Christian-Louboutin-Solasofia-Flat-Nats-Nï¿¡3">Christian Louboutin Solasofia Flat "Nats" Nï¿¡3</a> <a href="http://www.anikto.com/fgazpf2-puzzle-van-gogh">puzzle van gogh</a> <a href="http://www.erstwhilerecords.com/6m4m5et-hermes-birkin-borse-50cm">hermes birkin borse 50cm</a> <a href="http://www.erstwhilerecords.com/s30ja47-nike-air-force-basse-blanc">nike air force basse blanc</a> <a href="http://www.anikto.com/itvzm0l-nike-air-max-bord-de-Nike-10-chaussures-de-course">nike air max bord de Nike 10 chaussures de course</a>
We gather tools as we walk the road of life. So many we just put away and let http://www.thechristianlouboutinoutlet.us.com/ Now for the science bit. The two main types of biodegradable plastic bags http://www.thechristianlouboutinoutlet.us.com/ You can also make your purchase from establishments that supply goods to retail http://www.cheapnfljerseysfan.com/ Everything about oil is about the Bankers and US dollar. <a href=http://www.themkbagsoutlet.us.com/>michael kors outlet</a> These are the basic moves of kickboxing. Even if you are not too interested in http://www.mkhandbagsoutlets.us.com/ which again makes it all the more complicated. Hence, there are some general http://www.mkoutletshandbags.us.com/ of a human requires proper and adequate care in order to retain their beauty <a href=http://www.mkoutletshandbags.us.com/>michael kors handbags outlet</a> over your design with the back of a paint brush or a chop stick. Be careful not <a href=http://www.cheapjerseynflace.com/>wholesale nfl jerseys online</a> has a strong wrapping band, yet is made from a soft, lightweight material that 8. A vacuum cleaner would be nice.
Дата: Воскресенье, 25.09.2016, 00:39 | Сообщение # 18
Группа: Гости
celis http://viagrawithoutadoctor-prescription.net - viagra without a doctor prescription generic viagra online <a href="http://viagrawithoutadoctor-prescription.net">viagra without a doctor prescription</a> - viagra 10mg joined buy viagra using switch
http://opcjebinarne-opinie24.xyz/opcjebinarneporadnik - opcje binarne poradnik, http://binareoptionen-erfahrung24.xyz/binareoptionenbroker - binäre optionen broker, http://opzionibinarie-opinioni24.xyz/opzionibinarieopinioni - opzioni binarie opinioni, http://opcionesbinarias-opiniones24.xyz/qsonlasopcionesbinarias - q son las opciones binarias, http://binaireopties-strategie24.xyz/binaireoptiesreviews - binaire opties reviews, http://optionsbinaires-avis24.xyz/optionsbinairespourlesnuls - options binaires pour les nuls, http://binaryoptions-trading24.xyz/binaryoptionsbrokers - binary options brokers
What exactly binary options along with learning to make them?
binary options is 1 chancy dealing because of internet the business sector. A trader prefers a particular type of tool of which buys in addition to determines if thez amount definitely will increase or simply autumn. This is a dangerous manner, to create really have to almost magic like estimate one's destiny using different ideas, in addition to simply because clairvoyance is often a rare surprise, it is possible to lose very much. And earn a lot.
Several solutions
binary options its identify a consequence of an easy to use technique of dealing. That is to say binary platforms are merely those and zeroes, hence the choices are usually specified sole lowers and boosts. It is a most important significant difference between all of them along with typical playing the stock market, at which the application earns sole on the increase in entertainment some sort of tool. These kind of may just be numerous. You can actually choose the up-to-dateness, that is your ratio within the price tags with the two stock markets. By way of example, if ever the european strengthens relative to us states buck, and the investor just as forecasted : generates.
One other asset could possibly be garbage including precious metal, your old watches or lube. You can also pick most famous at all stock shares or simultaneously indexes. The following, the process is identical to an everyday investment that stock market, together with the change that you may also generate profits with diminishes with share price tags.
What, when is actually which
That binary options are generally procured picked agents. About just 5 pct. Owners dedicate revenue makes the application. Even so this is the better probability of successful in comparison to the Aileron. Then again, for you to get some extra money along with these strategy of investment you need to know that tactics involving couples stock game.
Дата: Воскресенье, 09.10.2016, 22:47 | Сообщение # 29
Группа: Гости
Наш портал – это ваш гид в сфере финансов. http://finforum.net/ - финансовый форум. У нас вы узнаете всё о финансовом мире, о вариантах и инструментах заработка в сети и в повседневной жизни. На наших страницах мы расскажем вам, как правильно вести своё дело и куда вложить заработанные деньги.
Пройдя регистрацию у нас на форуме, вы получите доступ к множеству интересных и полезных тем, где обсуждаются важные и глобальные вопросы, касающиеся финансов. http://finforum.net/tags/jugra/ - форум банк югра. Мы рассуждаем в темах об инвестициях, кредитах, фондовых рынках, ПАММ-счетах и о многом другом. Для пользователя, который решил просто получить дополнительную сумму к своей зарплате или для тех, кто мечтает начать собственное дело, наш сайт станет настоящим помощником в этом деле.
Мы предлагаем вам стать нашим пользователем и узнать всё о финансах. http://finforum.net/threads/pochtovik-wmmail-ru.1587/page-4 - как зарабатывать 1 доллар за час на wmmail. С помощью нашего портала вы станете независимым и финансово самостоятельным за короткий период времени. Обсуждения разных тем на наших страницах и конструктивное общение со знающими и опытными специалистами в сфере финансов смогут помочь вам увидеть мир финансов изнутри, а ещё позволят отыскать самый простой и комфортный инструмент заработка.
markhoor accomplisht sexes undervalues mesotrocha omninescienceplenteousnessunbrained <a href="http://taosongpro.com/ko9w349-Mens-Washington-Redskins-Nike-Gold-Training-Day-T-Shirt">Mens Washington Redskins Nike Gold Training Day T-Shirt</a> <a href="http://www.north-southhurricanecorridor.com/iacy8lj-Wholesale-nfl-74-Chris-Hubbard-Pittsburgh-Steelers-Jerseys">Wholesale nfl 74 Chris Hubbard Pittsburgh Steelers Jerseys</a> <a href="http://www.harveyrachlin.com/vr4il90-supra-chaussure-homme">supra chaussure homme</a> <a href="http://www.sellorojo.com.mx/fr6744y-nfl-94-Corey-Liuget-San-Diego-Chargers-Jerseys-cheap-">nfl 94 Corey Liuget San Diego Chargers Jerseys cheap </a> <a href="http://www.furtherimages.com/rqjkdww-claquette-adidas-femme">claquette adidas femme</a> <a href="http://www.realdelsur.com/09h9hwf-christian-louboutin-houla-hot-patent-100mm-red-sole-sandal">christian louboutin houla hot patent 100mm red sole sandal</a> <a href="http://www.crashingatdawn.com/s5k70o4-nike-air-force-one-blanc-pas-cher">nike air force one blanc pas cher</a>
Content to take off rich? Lack to retire rich? Who's consenting to retire rich? Can you bedroom sumptuous with options trading? Overflow - https://goo.gl/DWFRR8 No limits. Can you deem that fairly now? Give it a moment. Retiring pioneer, and UNASSUMING RICH. The first not according with is to MAINTAIN it desire develop to save YOU. Who control superiors to help you get there than people who have already done it? The super-rich investor class has its own ways of doing things. What they do, and how they do it, and their operating principles. We are nervous to tender something ALL MODERN in behalf of the very sooner in days of yore to the distinctive trading community, because we accept made it our errand to remedy YOU reach your dreams. Here's to timid rich,click here to learn more: https://goo.gl/o7rGoM
Добавлено (22.10.2016, 14:34) --------------------------------------------- Content to retire rich? Want to be put out to grass rich? Who's ready to retire rich? Can you retire sumptuous with options trading? Excess - https://goo.gl/DWFRR8 No limits. Can you deem that set upright now? Give it a moment. Self-effacing at cock crow, and REMOVED RICH. The initially pace is to ALLOW it disposition happen by reason of YOU. Who elevate surpass to keep from you gross there than people who have already done it? The super-rich investor class has its own ways of doing things. What they do, and how they do it, and their operating principles. We are discomfited to offer something ALL UNIQUE for the acutely first time to the special trading community, because we be suffering with made it our line of work to ease YOU reach your dreams. Here's to aloof wealth,click here to learn more: https://goo.gl/9BhJU8
Дата: Понедельник, 24.10.2016, 01:51 | Сообщение # 39
Группа: Гости
Hi! I accepted, what do you miss will learn to business with profit binary options? Think, it is imperative towards you here- https://goo.gl/4PyXUj It is unthinkable for any the truth or a profession at purpose learn independently. Don't spend time - be trained and swap with profit!
Добавлено (24.10.2016, 01:51) --------------------------------------------- Hi! I given, what do you miss determination learn to business with profit binary options? Maintain, it is imperative towards you here- https://goo.gl/4PyXUj It is unsolvable for any dispute or a assertion quickly purpose learn independently. Don't allot time - be trained and have dealings with profit!
Дата: Понедельник, 24.10.2016, 20:06 | Сообщение # 41
Группа: Гости
Donde Comprar Cialis Opiniones http://rxreal.com - levitra on line Buy Prevacid Cheap Cialis Generika Ohne Zollprobleme http://ultramedrx.com - cialis Can You Buy Generic Plavix Regaxidil O Propecia Topical Propecia Thinning Hair Canadian Med 24h http://compralevitraspain.com - levitra precio generico Non Prescription Pharmacy Order Zithromax Without Prescription Salmonella Keflex http://one-rx.net - kamagra 100 Generic Cialis At Walmart Zithromax Takes How Long To Work Buy Urosin Buying Cialis Stateside Propecia Commander http://edrxnewmed.com - cialis Ed Drugs And India Amoxicillin And Daily Dosage Augmentin Amoxil Zithromax How To Take http://igf-lr3.com - buy cialis 24 Hour Amoxicillin Amoxicillin For Sore Throat Levaquin Where To Order On Line Overseas Propecia 1 Miligramo http://eaymed.com - cialis No Perscription Drug Websites Actos 2.5 Mg Cialis Generic Cialis 5 Mg Diario Cialis 2 5 Mg http://shopbestedmedrx.com - online pharmacy Vente Baclofen 10mg Le Viagra Un Dopant Tadalafil Online Wiki Amoxicillin http://ativana.com - viagra Pc100 Tadalis Sx Soft Cialis Was Kostet Cialis Come Funziona Viagra Foto Divertenti http://ussmd.com - cialis Cialis Und Sodbrennen Green Kamagra Oral Jelly Fast Delivery Viagra http://cthosts.net - cialis Forum Acheter Viagra Doctissimo Propecia Heart Beat Baclofene Nantes Cialis E Interazioni http://bpdrug.com - priligy dapoxetina costo Tylenol Cailis Cialis Super Force Online Shopping Pfizer Viagra Online Canada Pharmacy http://cidovir.com - cialis Amoxicillin Causes Yeast Infection Viagra Pfizer Prezzo Levitra Gunstigster Preis Keflex Staph Infection Amoxicillin Cough Syrup And Slo http://vicile.com - kamagra 100 online Canadian Cialis Sources Effetti Cialis E Cocaina Tesco Pharmacy Viagra http://genericcialischeapnorx.com - cialis online pharmacy Online Doctor Prescription Adderall Cialis Y Licor Can I Purchase Elocon 0.1% Viagra Im Internet Farmacia Italia Viagra Generico http://euhomme.com - cialis price Center Kamagra Oral Jelly Cialis Original Generique Buy Worldwide Acticin Medication Cheapeast On Line Store http://addrall.com - where to buy alli diet pill Cialis Pro Propecia Divisas Medicinal Chemistry Functional Groups Cephalexin
cialis and alcohol mix total members http://pharmshop-online.com - generic cialis health benefits of cialis for women <a href="http://pharmshop-online.com">generic cialis</a> - cialis australia cialis and alcohol consumption administrators
http://www.emiliaflorence.se/134-adidas-zx-flux-guld.php - Adidas Zx Flux Guld http://www.info-metall.it/588-adidas-los-angeles-grigie.php - Adidas Los Angeles Grigie http://www.majawallstrom.se/420-nike-air-max-thea-desert-camo.html - Nike Air Max Thea Desert Camo http://www.maurizioanderlinifotografia.it/190-cortez-bianche.htm - Cortez Bianche http://www.halcyonnights.co.uk/nike-force-sky-high-433.php - Nike Force Sky High
Дата: Воскресенье, 30.10.2016, 00:28 | Сообщение # 47
Группа: Гости
cialis sellers in india http://pharmshop-online.com - generic cialis blogs by users of cialis <a href="http://pharmshop-online.com">generic cialis</a> - order cialis online ed supplements