Всем привет! Никогда не програмировал, занимаюсь дизайном под Plone ( http://plone.org ), на серверной платформе Zope( http://zope.org ) Знаю html и css, немного ActionScript. Никогда не сталкивался с PHP и с сервером apache. Хотел бы попробовать начать изучать PHP. Для начала хочу поставить Апач локально под win2000, сконфигурить и подкрутить PHP. Скачал с http://php.ru/ # Apache 2.0 for Win # PHP 5.1.4 for Win С чего начать? Существует ли где-нибудь подробный пошаговый мануал на установку и настройку именно этого софта на русском? Есть книга - самоучитель Колиснеченко - по его мануалу нифига ничё не работает. В частности проинсталил Apach (typical), но при его старте генерится ошибка: The system cannot find the file specified. : No installed service named "Apache2". Надеюсь, что кто-нибудь найдёт время ответить! p.s. to Admin, если такие вопросы слишком примитивны, плз. дайте занать
Забудь про денвер!!! только Apache + PHP + MySQL Статья неизвестного автора ))) : Создайте папку Server на вашем диске (в моём случае диск D:\Server). Туда будет установлен ваш сервер. Установка Apache 2.0.54. 1) Запускаем apache_2.0.54-win32-x86-no_ssl.msi 2) Жмём Next в появившемся окне (Рис.1) 3) a) Ставим кексик I accept the terms in the license agreement. b) Жмём Next. (Рис.2) 4) Жмём Next. (Рис.3) 5) Появляеться окно Server Information.(Рис.4) a) Вписываем следующее: Network Domain: localhost Server Name: localhost Administrator's E-mail Adress: localhost@localhost.com b) Ставим кексик For All users, on port 80, as a Service -- Recommended. c) Жмём Next. 6) a) Выбираем Custom b) Жмём Next. (Рис.5) 7) В появившемся окне жмём на кнопочку Change. (Рис.6-1) Далее находим вашу папочку Server и жмём ОК. (Рис.6-2) Жмём Next. (Рис.6-3) 8) Жмём кнопочку Install. (Рис.7) 9) Жмём Finish. 10) Открываем ваш любимый Browser (в моём случае Internet Explorer). В поле URL пишем http://127.0.0.1 или http://localhost Если вы видите что-то похожее как на рисунке 8. Значит Apache установился верно. На этом установка Apache завершенна, но не его настройка. Установка php 4.4.0 и настройка Apache. 1) Первым делом распаковываем архив. (Рис 9) Заходим в папку php-4.4.0-Win32 и внутри неё, переименовываем папку php-4.4.0-Win32 в php4 (Рис.10) Далее просто копируем папку php4 в вашу директорию Server. (Рис.11) Далее создайте папку www в директории Server (Рис.12) 2) Этот этап показывает как настроить конфиг файл Apache -- httpd.conf. a) открываем файл httpd.conf в директории D:\Server\Apache2\conf\ вашим любимым редактором (в моём случае это Edit Plus) b) Переводить с английского языка все настройки я не буду, это вам поможет словарь сделать, но как правильно настроить это я вам расскажу. Итак те строчки, котрые начинаются с # называются "закоментированными" тоесть -- то, что написано после знака # не имеет смысла. Мой конфиг с моими коментариями: Код # -- ServerRoot указывает где установлен апаче -- # ServerRoot "D:/Server/Apache2" # -- PidFile создается при запуске апаче, тем самым подтверждая его работу -- # PidFile logs/httpd.pid # -- Timeout в секундах между клиентом и сервером -- # Timeout 300 # -- KeepAlive -- # KeepAlive On # -- MaxKeepAliveRequests -- # MaxKeepAliveRequests 100 # -- KeepAliveTimeout -- # KeepAliveTimeout 15 <IfModule mpm_winnt.c> ThreadsPerChild 250 MaxRequestsPerChild 0 </IfModule> # -- Listen - эта директива указывает к чему именно привязан апач (в нашем случае к порту 80) -- # Listen 80 # -- LoadModule модули апача -- # LoadModule access_module modules/mod_access.so LoadModule actions_module modules/mod_actions.so LoadModule alias_module modules/mod_alias.so LoadModule asis_module modules/mod_asis.so LoadModule auth_module modules/mod_auth.so #LoadModule auth_anon_module modules/mod_auth_anon.so #LoadModule auth_dbm_module modules/mod_auth_dbm.so #LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule autoindex_module modules/mod_autoindex.so #LoadModule cern_meta_module modules/mod_cern_meta.so LoadModule cgi_module modules/mod_cgi.so #LoadModule dav_module modules/mod_dav.so #LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule dir_module modules/mod_dir.so LoadModule env_module modules/mod_env.so #LoadModule expires_module modules/mod_expires.so #LoadModule file_cache_module modules/mod_file_cache.so #LoadModule headers_module modules/mod_headers.so LoadModule imap_module modules/mod_imap.so LoadModule include_module modules/mod_include.so #LoadModule info_module modules/mod_info.so LoadModule isapi_module modules/mod_isapi.so LoadModule log_config_module modules/mod_log_config.so LoadModule mime_module modules/mod_mime.so #LoadModule mime_magic_module modules/mod_mime_magic.so #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_connect_module modules/mod_proxy_connect.so #LoadModule proxy_http_module modules/mod_proxy_http.so #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule setenvif_module modules/mod_setenvif.so #LoadModule speling_module modules/mod_speling.so #LoadModule status_module modules/mod_status.so #LoadModule unique_id_module modules/mod_unique_id.so LoadModule userdir_module modules/mod_userdir.so #LoadModule usertrack_module modules/mod_usertrack.so #LoadModule vhost_alias_module modules/mod_vhost_alias.so #LoadModule ssl_module modules/mod_ssl.so # -- Поддержка PHP4 -- # ScriptAlias /php/ "D:/Server/php4/" AddType application/x-httpd-php .php Action application/x-httpd-php "/php/php.exe" # -- ServerAdmin -- # ServerAdmin chaoser@chaoser.info # -- ServerName -- # ServerName www.chaoser.info:80 # -- UseCanonicalName указывает на использование dns в url или только IP адресса -- # UseCanonicalName On # -- DocumentRoot -- # DocumentRoot "D:/Server/www" # -- Немного безопасности -- # # -Indexes не даст увидеть содержимое папок на вашем сервере <Directory /> Options FollowSymLinks -Indexes AllowOverride All </Directory> <Directory "D:/Server/www"> Options -Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> # -- DirectoryIndex - файлы, которые апач будет подгружать автоматически если вы заходите в ту или иную директорию -- # DirectoryIndex index.php index.html index.html.var index.htm # -- AccessFileName файл для дополнительных настроек апаче, он может находиться в любой директории -- # # как вы заметили в default настройках стоит точка в начале, но т.к Windows не поддерживает создание файлов с точкой в начале, заменяем её на запятую AccessFileName ,htaccess <Files ~ "^\,ht"> Order allow,deny Deny from all </Files> # -- TypesConfig -- # TypesConfig conf/mime.types # -- DefaultType -- # DefaultType text/plain <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> # -- HostnameLookups -- # HostnameLookups Off # -- ErrorLog -- # ErrorLog logs/error.log LogLevel warn 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 CustomLog logs/access.log common # -- ServerTokens -- # ServerTokens Full # -- ServerSignature -- # ServerSignature On Alias /icons/ "D:/Server/Apache2/icons/" <Directory "D:/Server/Apache2/icons"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory> AliasMatch ^/manual(?:/(?:de|en|es|fr|ja|ko|ru))?(/.*)?$ "D:/Server/Apache2/manual$1" <Directory "D:/Server/Apache2/manual"> Options Indexes AllowOverride None Order allow,deny Allow from all <Files *.html> SetHandler type-map </Files> SetEnvIf Request_URI ^/manual/(de|en|es|fr|ja|ko|ru)/ prefer-language=$1 RedirectMatch 301 ^/manual(?:/(de|en|es|fr|ja|ko|ru)){2,}(/.*)?$ /manual/$1$2 </Directory> <Directory "D:/Server/Apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> IndexOptions FancyIndexing VersionSort AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text/* AddIconByType (IMG,/icons/image2.gif) image/* AddIconByType (SND,/icons/sound2.gif) audio/* AddIconByType (VID,/icons/movie.gif) video/* AddIcon /icons/binary.gif .bin .exe AddIcon /icons/binhex.gif .hqx AddIcon /icons/tar.gif .tar AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip AddIcon /icons/a.gif .ps .ai .eps AddIcon /icons/layout.gif .html .shtml .htm .pdf AddIcon /icons/text.gif .txt AddIcon /icons/c.gif .c AddIcon /icons/p.gif .pl .py AddIcon /icons/f.gif .for AddIcon /icons/dvi.gif .dvi AddIcon /icons/uuencoded.gif .uu AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl AddIcon /icons/tex.gif .tex AddIcon /icons/bomb.gif core AddIcon /icons/back.gif .. AddIcon /icons/hand.right.gif README AddIcon /icons/folder.gif ^^DIRECTORY^^ AddIcon /icons/blank.gif ^^BLANKICON^^ DefaultIcon /icons/unknown.gif IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t AddLanguage ca .ca AddLanguage cs .cz .cs AddLanguage da .dk AddLanguage de .de AddLanguage el .el AddLanguage en .en AddLanguage eo .eo AddLanguage es .es AddLanguage et .et AddLanguage fr .fr AddLanguage he .he AddLanguage hr .hr AddLanguage it .it AddLanguage ja .ja AddLanguage ko .ko AddLanguage ltz .ltz AddLanguage nl .nl AddLanguage nn .nn AddLanguage no .no AddLanguage pl .po AddLanguage pt .pt AddLanguage pt-BR .pt-br AddLanguage ru .ru AddLanguage sv .sv AddLanguage zh-CN .zh-cn AddLanguage zh-TW .zh-tw LanguagePriority ru en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR sv zh-CN zh-TW ForceLanguagePriority Prefer Fallback AddCharset ISO-8859-1 .iso8859-1 .latin1 AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen AddCharset ISO-8859-3 .iso8859-3 .latin3 AddCharset ISO-8859-4 .iso8859-4 .latin4 AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk AddCharset ISO-2022-JP .iso2022-jp .jis AddCharset ISO-2022-KR .iso2022-kr .kis AddCharset ISO-2022-CN .iso2022-cn .cis AddCharset Big5 .Big5 .big5 # For russian, more than one charset is used (depends on client, mostly): AddCharset WINDOWS-1251 .cp-1251 .win-1251 AddCharset CP866 .cp866 AddCharset KOI8-r .koi8-r .koi8-ru AddCharset KOI8-ru .koi8-uk .ua AddCharset ISO-10646-UCS-2 .ucs2 AddCharset ISO-10646-UCS-4 .ucs4 AddCharset UTF-8 .utf8 AddCharset GB2312 .gb2312 .gb AddCharset utf-7 .utf7 AddCharset utf-8 .utf8 AddCharset big5 .big5 .b5 AddCharset EUC-TW .euc-tw AddCharset EUC-JP .euc-jp AddCharset EUC-KR .euc-kr AddCharset shift_jis .sjis AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddHandler type-map var BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully BrowserMatch "^WebDrive" redirect-carefully BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully BrowserMatch "^gnome-vfs" redirect-carefully <IfModule mod_ssl.c> Include conf/ssl.conf </IfModule> # -- Это неотьемлемая часть в безопасности вашего сервера. Без неё злоумышленник может скачать любой файл с вашего компьтера -- # <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_METHOD} !^(GET|POST|HEAD)$ RewriteRule .* - [F] </IfModule> <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_METHOD} ^TRACE RewriteRule .* - [F] </IfModule> На этом стандартная настройка конфика завершенна. Сохраняем файл и переходим к пункту проверки работоспособности. P.S я думаю вы догодалсиь что путь к директориям, если он не совпадает нужно заменить. Так как я использую сервер на диске D, для вас же, это может быть любая другая буква... 3) Проверка php Заходим в папку www в вашей директории Server и создаем там файл index.php. Открываем его с помощью вашего любимого редактора (мой случай - Edit Plus) и пишем в нём: Код <? echo "MY PHP IS WORKING"; ?> Закрываем, сохраняем. Открывайте ваш Browser, и пишите http://127.0.0.1 Если вы видите то же, что и на рисунке 13, значит php настроен правильно. Можно уже смело писать скрипты на php Установка MySql 4.1 1) Разпаковываем архив mysql-4.1.12a-win32.zip 2) Запускаем Setup.exe 3) В появившемся окне жмём Next (Рис.14) 4) Выбираем Custom и жмём Next (Рис.15) 5) Появляется окно напоминающее настройки Custom у Апаче. Надеюсь как вы делали в Апач вы еще не забыли Жмём Change. Выбираем директорию Server и дописываем в строке MySql и Жмём ОК (Рис.16) Далее Next (Рис.17) и Жмём Install (Рис.18) Если выскочит Mysql.com Sign Up, ставте кексик в Skip Sign-Up и нажимайте Next (Рис.19) Последнее окно инсталяции, убедитесь, что стоит галочка у Configure the MySql Server Now и нажимайте Finish (Рис.20) Настройка Mysql 4.1 1) Появляется знакомое нам окошко где следует нажать Next (Рис.21) 2) Ставте кексик у Detailed Configuration и нажимайте Next (Рис.22) 3) Кексик у Developer Machine и нажимайте Next (Рис.23) 4) Кексик у Multifunctional Database и нажимайте Next (Рис.24) 5) Далее нажимаем Next (Рис.25) 6) Кексик у Decision Support (DSS)/OLAP и нажимайте Next (Рис.26) 7) Кексик у Enable TCP/IP Networing и нажимайте Next (Рис.27) 8) Кексик у Standard Character Set и нажимайте Next (Рис.28) 9) Кексик у Install As Windows Service и нажимайте Next (Рис.29) 10) Галочка у Modify Security Settings и вписываем пасс qwerty (Password может быть любым, на ваше усмотрение) и нажимайте Next (Рис.30) 11) Нажимаем просто Execute (Рис.31) 12) Нажимаем Finish (Рис.32) На этом настройка MySql завершенна. Но есть одно но... "НО" 1) Заходим Start -> Run пишем cmd (Рис.33) и жмём ОК 2) Переходим в директорию D:\Server\Mysql\bin (в вашем случае путь к директории может быть другим) (Рис.34) 3) Пишем: mysql -u root -p (Рис.35) и вводим тот пасс который вы писали при настройке Mysql (Пункт 10) 4) После ввода password'a вас поприветствует Mysql и вы попадете в его консоль (Рис.36) 5) Пишем: Код SET PASSWORD FOR -> 'root'@'localhost' = OLD_PASSWORD('qwerty'); (Рис.37) 6) ИМЕННО в точности так как сдесь написано (после SET PASSWORD FOR жмём Enter и пишем дальше 'root'@'localhost' = OLD_PASSWORD('qwerty') 7) Жмём Enter (Рис.38) 8) Пишем quit. Жмём Enter 9) Закрываем CMD. 10) Далее следует проверка рабтоспособности MySQL 11) Открываем наш index.php файл любимым редактором (файл index.php находится в директории www, если кто забыл) 12) Теперь изменяем его, чтобы он выглядел так: Код <? echo "MY PHP IS WORKING"; $mconn = mysql_connect("localhost", "root","qwerty" ); if ($mconn) { echo "<br>MYSQL Работает верно"; } else { echo "<br>Ошибка при подключении к MySQL"; } ?> 13) Сохраняем & Закрываем его. 14) Открываем ваш любимый Browser в поле URL пишем http://127.0.0.1 и что же мы видим? если Mysql установлен верно, то будет надпись "MYSQL Работает верно". Если же надпись "Ошибка при подключении к MySQL", значит вы где-то в предыдущих шагах ошиблись. На этом установка Apache+php4.4.0+Mysql4.1 законченны. Благодарю за внимание.
ок, хорошо, тогда пока без аватары буду. Просто на некоторых форумах, наоборот требуют наличие аватары.
на вкус на цвет и т.д. лично мне всё равно последний из четвёрки или пятый. ставятся они практически одинакого, цифорка 4 меняется на 5 и всё. процесс установки PHP подробно описан в файле дистрибутива - install.txt.
ок пашёл ставить... ps Переодически встречаю вопросительно-недоумевающие взгляды, наших программеров питонщиков - на столе книга PHP5...
Hight, для того, чтобы человеку научиться водить машину, ему не надо покупать гору запчастей и усердно собирать из них свой первый автомобиль. Так же и в данном случае, для изучения языка программирования под названием ПХП совсем не обязательно начинать с самостоятельной установки какой либо из unix ОС, HTTP сервера и СУБД. Для начала вполне подойдёт использование готовых, надёжных и простых в установке решений под виндами. По мере необходимости человек сам дойдёт до самостоятельной установки перечисленных компонентов, или не дойдёт до этого вообще.
Если неохота связываться с установкой и настройкой Apach и mySQL советую поставить xamp. Гемороя меньше, функционал тот же!
вилами.... Alekzander а не проще уж тогда совсем ничего не знать и непредставлять как все это работает приблизительно даже?? может проще вообще денег заплатить и гемороя практически совсем не будит?... А че xamp?? че не денвер или апсерв какой нить гогенненькый?