در این آموزش بصورت مرحله به مرحله PHP، Apache HTTP، MySQL، phpMyAdmin را بر روی ویندوز 10 نصب می کنیم.
توجه داشته باشید که بر روی ویندوز های پایین تر هم می توانید موراد ذکر شده را نصب کنید.
بنابراین ما موارد زیر را بر روی ویندوز 10 نصب می کنیم:
PHP
: http://www.php.net
صفحه دانلود: http://windows.php.net/download
ما نسخه php-7.1.8-Win32-VC14-x64
را دانلود می کنیم.
Apache
: http://httpd.apache.org
صفحه دانلود: http://httpd.apache.org/download.cgi
ما نسخه httpd-2.4.27-x64
را دانلود می کنیم.
MySQL
: http://www.mysql.com
صفحه دانلود: https://dev.mysql.com/downloads/installer
ما نسخه mysql-installer-community-5.7.19.0
را دانلود می کنیم.
phpMyAdmin
: http://www.phpmyadmin.net
صفحه دانلود: http://www.phpmyadmin.net/home_page/downloads.php
ما نسخه phpMyAdmin-4.7.3
را دانلود می کنیم.
اکنون که تمام پکیج های لازم را دانلود کردیم، میرویم سراغ نصب این پکیج ها.
فایل httpd-2.4.27-x64-vc14
را از حالت فشرده خارج کنید، پوشه Apache24
را در درایو C:/
قرار بدهید. آدرس پوشه bin
را در Environment Variables
ها قرار می دهیم. برای این کار منوی start
را باز کنید و مقدار Environment Variables
را تایپ کنید و Edit the system Environment Variables
را کلیک کنید. در پنجره باز شده بر روی Environment Variables...
کلیک کنید.
در پنجره باز شده از قسمت User variables for
بر روی دکمه NEW...
کلیک کنید و نام Variables
جدید را PATH
قرار بدهید و مقدار آن را هم C:\Apache24\bin
قرار بدهید. برای اینکه متغیری که تعریف کردیم در سیستم شناسایی بشود کافی است یک بار log out
کنیم و مجدد login
کنیم.
برای نصب Apache
مانند یک سرویس دستور زیر را در CMD
اجرا می کنیم.
httpd -k install
برای بررسی موفقیت آمیز بودن نصب Apache
آدرس http://localhost
را در مرورگر باز می کنیم.
حالا می توانیم توسط دستور زیر این سرویس را اجرا کنیم.
httpd -k start
سایر دستوراتی که می توانیم برای سرویس Apache
اجرا کنیم:
Stop Apache httpd -k stop
Restart Apache httpd -k restartUninstall Apache Service httpd -k uninstallVersion Details httpd -VTest Config Syntax httpd -tCommand Line Options List httpd -h
یک پوشه در C:\Program Files (x86)
با نام php
ایجاد می کنیم، یک پوشه دیگه داخل آن با نام php-7.1.8
ایجاد می کنیم.
بنابراین ما یک پوشه جدید داریم: C:\Program Files (x86)\php\php-7.1.8
فایل php-7.1.8-Win32-VC14-x64
را از حالت فشرده خارج می کنیم و تمام فایل های داخل آن را به پوشه php-7.1.8
انتقال می دهیم.
PHP
نصب شد. تنها کاری که الان انجام می دهیم این است که مقدار C:\Program Files (x86)\php\php-7.1.8
را به Environment Variable
اضافه کنیم. این مقدار را در PATH Variable
که قبلا ایجاد کردیم اضافه می کنیم.
الان زمان انجام تنظیمات مربوط به PHP
و Apache
می باشد با اینکه هنوز MySQL
و phpMyAdmin
را نصب نکرده ایم اما قبل از آن می خواهیم بررسی کنیم که PHP
و Apache
با همدیگر بدون مشکل کار خواهند کرد.
فایل httpd.conf
را باز کنید. این فایل را می توانید در پوشه C:\Apache24\conf
پیدا کنید.
خطوط زیادی هستند که با LoadModule
شروع می شوند، آن ها را پیدا کنید و در زیر آخرین LoadModule
مقدار زیر را وارد کنید.
LoadModule php7_module "C:\Program Files (x86)\php\php-7.1.8/php7apache2_4.dll"
خط LoadModule rewrite_module modules/mod_rewrite.so
را پیدا کنید و علامت #
اول آن را بردارید.
همین کار را هم برای خط ServerName localhost:80
یا اگر این مورد وجود نداشت برای ServerName www.example.com:80
انجام دهید و مقدار آن را بصورت زیر تغییر دهید:
ServerName localhost
بخش <IfModule mime_module>
را پیدا کنید و درست بعد از </IfModule>
خط زیر را وارد کنید.
AddType application/x-httpd-php .php
مقدار زیر را پیدا کنید.
#
# 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 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
الان می خواهیم که در DirectoryIndex
صفحه index.php
را در اولویت اول برای اجرا کردن توسط Apache
در نظر بگیریم.
مقدار <IfModule dir_module>
را پیدا کنید و کد آن را بصورت زیر ویرایش کنید.
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
در این زمان، تمام وب سایت هایی که ایجاد می کنیم باید در مسیر زیر قرار بگیرند:
C:\Apache24\htdocs
اما ما این را نمی خواهیم. می خواهیم که وب سایت هایمان را در مسیر دیگری مثلا D:/www
داشته باشیم.
برای این کار مقدار DocumentRoot "${SRVROOT}/htdocs"
را پیدا می کنیم و با مقدار DocumentRoot "D:/www"
جایگزین می کنیم.
همچنین باید مقدار <Directory "${SRVROOT}/htdocs">
را هم با <Directory "D:/www">
جایگزین کنیم.
در آخر فایل httpd.conf
خط زیر را برای اینکه به Apache
بگوییم که فایل php.ini
در کجا قرار دارد اضافه می کنیم.
PHPIniDir "C:/Program Files (x86)/php/php-7.1.8"
سرویس Apache
را توسط اجرای دستور httpd -k restart
در ترمینال (CMD)
ریستارت کنید. اکنون آدرس http://localhost
را در مرورگر باز کنید. اگر مشکلی نباشد باید یک صفحه خالی مشاهده کنید. اگر همچنان صفحه قبلی مربوط به سرویس Apache
را مشاهده می کنید بهتر است یک بار سرویس Apache
را stop
کرده و مجددا start
کنید. چونکه در مسیر D:/www
هیچ فایلی وجود ندارد یک صفحه سفید مشاهده خواهیم کرد.
یک فایل با نام index.php
در پوشه D:/www
ایجاد کنید و کد زیر را داخل آن قرار دهید.
<?php
phpinfo();
?>
فایل را ذخیره کنید و دوباره آدرس http://localhost
را در مرورگر مشاهده کنید، اکنون باید تمام ویژگی های مربوط به php
نصب شده را بتوانید ببینید.
این به این معنی است که PHP
و
Apache
به درستی نصب شده اند.
بیایید کار را با php
ادامه دهیم. به دایرکتوری C:\Program Files (x86)\php\php-7.1.8
برگردید:
فایل php.ini-development
را کپی کنید و نام آن را php.ini
قرار بدهید. این فایل را باز کنید و در قسمت Paths and Directories
مقدار ; extension_dir = "ext"
را پیدا کنید. سمی کولن ابتدای آن را بردارید و مقدار آن را بصورت زیر ویرایش کنید:
extension_dir = "C:\Program Files (x86)\php\php-7.1.8\ext"
اکنون در ناحیه Dynamic Extension
شما می توانید بلاک هایی را پیدا کنید که با extension
شروع می شوند.
اگر می خواهیم که یک extension
را فعال کنید، کافی است تنها علامت سمی کولن ابتدای آن را بردارید. علامت سمی کولن را از ابتدای خطوط زیر بر می داریم یا به اصطلاح uncomment
می کنیم.
extension=php_bz2.dll
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysqli.dll
extension=php_openssl.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
uncomment
کردن سایر extension
ها می تواند دلیل کرش کردن Apache
باشد اگر نمی دانید که آن ها چه هستند پس به سایر extension
ها کاری نداشته باشید.
extension
هایی را که uncomment
می کنید بصورت تکی انجام دهید و برای هر extention
که فعال می کنید یک بار سرویس Apache
را ریستارت کنید، اگر مشکلی نبود همه چیز درست است.
کاری که الان می خواهیم انجام دهیم تنظیم Timezone
بر طبق کشورمان است.
مقدار "date.timezone ="
را پیدا کنید و با مقدار date.timezone = "Asia/Tehran"
جایگزین کنید.
بسیار خوب، فایل php.ini
را ذخیره کنید و سرور Apache
را هم ریستارت کنید. اکنون مجدد آدرس http://localhost
را در مرورگر باز کنید. باید تغییراتی که دادیم را مشاهده کنیم. همچنین الان timezone
نیز تنظیم شده است.
فایل mysql-installer-community-5.7.19.0.msi
را اجرا کنید و مراحل نصب را طی کنید تا mysql
نصب شود. تنها کاری که در حین نصب MySQL
باید در نظر داشته باشیم در صورت نیاز تعریف کاربر برای MySQL
می باشد. کاربر پیش فرض با کاربری root
تعریف شده است و می توان در هنگام نصب یک پسورد هم برای آن در نظر گرفت و یا اینکه کاربران دیگری با سطح دسترسی های مختلف تعریف کرد.
MySQL
در دایرکتوری C:\Program Files\MySQL\MySQL Server 5.7
نصب می شود.
آدرس زیر را در PATH Variable
که قبلا در Environment Variables
تعریف کرده بودیم اضافه می کنیم.
C:\Program Files\MySQL\MySQL Server 5.7\bin
خب MySQL
هم نصب شد.
نصب phpMyAdmin
کار سختی نیست. فایل phpMyAdmin-3.4.1-all-languages.zip
را از حالت فشرده خارج کنید و تمام فایل ها را در یک پوشه با نام phpmyadmin
در دایرکتوری "C:\www"
قرار بدهید.
حالا آدرس http://localhost/phpmyadmin
را در مرورگر باز کنید. باید صفحه اتصال به phpMyAdmin
را مشاهده کنید. نام کاربری و رمز ورودی که در نصب MySQL
تعیین کردید را وارد کنید. اگر مشکلی نباشد باید به محیط phpMyAdmin
وارد شوید.
می خواهیم پروژه هایمان را در دایرکتوری D:\www\ourproject
قرار بدهیم، اما می خواهیم به جای استفاده از آدرس http://localhost/ourproject
برای دسترسی به این دایرکتوری از آدرس http://ourproject
استفاده کنیم.
از فایل hosts
در دایرکتوری C:\Windows\System32\drivers\etc
یک کپی بگیرید و این فایل را باز کنید. در این فایل چندین خط که کامنت شده اند و چندین خط که با 127.0.0.1
شروع شده اند وجود دارد. همچنین یک خط داریم بصورت زیر:
# 127.0.0.1 localhost
در زیر آن خط زیر را قرار می دهیم:
127.0.0.1 ourproject
این فایل را ذخیره کرده و جایگزین فایل قبلی hosts
در دایرکتوری C:\Windows\System32\drivers\etc
می کنیم.
حالا فایل httpd.conf
در دایرکتوری C:\Apache24\conf
را باز کنید و خط زیر را uncomment
کنید:
# Include conf/extra/httpd-vhosts.conf
اکنون فایل httpd-vhosts.conf
در دایرکتوری C:\Apache24\conf\extra
را باز کنید و تمام کدهای آن را کامنت کنید و در آخر این فایل مقادیر زیر را قرار بدهید:
# localhost
<VirtualHost *:80>
ServerAdmin webmaster@dummy
DocumentRoot "D:/www"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost.error.log"
CustomLog "logs/localhost-access.log" common
</VirtualHost>
# ourproject
<VirtualHost *:80>
ServerAdmin me@ourproject
DocumentRoot "D:/www/ourproject"
ServerName ourproject
ServerAlias ourproject
ErrorLog "logs/ourproject.error.log"
CustomLog "logs/ourproject-access.log" common
</VirtualHost>
در آخر یک بار سرویس Apache
را ریستارت کنید.
httpd -k restart
اگر با انجام مراحل بالا آدرس ourproject
باز نشد، بهتر است که یک بار کش DNS
را خالی کنید.
در داخل مرورگر کروم کلیدهای Ctrl+Shift+n
را بزنید تا پنجره incognito
باز شود حالا آدرس chrome://net-internals/#dns
را باز کنید و در صفحه ای که مشاهده می کنید دکمه Clear host cache
را کلیک کنید.
امیدوارم از این آموزش لذت برده باشید.