การติดตั้ง Apache, PHP, MySQL และ phpMyAdmin บน Windows XP การติดตั้ง PHP บนคอมพิวเตอร์ของคุณ การติดตั้ง PHP เป็นโมดูล Apache


ลิงค์ตรง: php-5.3.10-Win32-VC9-x86.zip
ในเวลาเดียวกันให้ดาวน์โหลดเอกสารเป็นภาษารัสเซียในรูปแบบ .chm ทันที คุณจะต้องใช้เมื่อเรียนและทำงาน: php_enhanced_ru.chm

แตกไฟล์เก็บถาวรลงในไดเร็กทอรีที่ต้องการ (แนะนำคือ "C:\php" ในตอนแรก) เปิด ไฟล์การกำหนดค่าที่มีการตั้งค่าที่แนะนำ - "php.ini-development" (อยู่ในรูทของการแจกจ่าย) เปลี่ยนชื่อเป็น php.ini และทำการเปลี่ยนแปลงต่อไปนี้

การแก้ไข php.ini:

  1. ค้นหาบรรทัด:
    post_max_size = 8M
    เพิ่มเป็น 16 MB ขนาดสูงสุดข้อมูลที่ได้รับโดยวิธี POST เปลี่ยนเป็น:
    post_max_size = 16M
  2. ค้นหาบรรทัด:
    ;include_path = ".;c:\php\includes"
    ยกเลิกหมายเหตุโดยลบเครื่องหมายอัฒภาคหน้าบรรทัด
    (โปรดทราบข้อยกเว้น! แบ็กสแลชเมื่อระบุเส้นทาง):
    include_path = ".;c:\php\includes"
    สร้างไดเร็กทอรีว่าง "C:\php\includes" เพื่อจัดเก็บคลาสที่รวมไว้
  3. ค้นหาบรรทัด:
    extension_dir = "./"
    ตั้งค่าของคำสั่งนี้เป็นเส้นทางไปยังโฟลเดอร์ที่มีนามสกุล:
    extension_dir = "C:/php/ต่อ"
  4. ค้นหาบรรทัด:
    ;upload_tmp_dir =
    ยกเลิกหมายเหตุและระบุเส้นทางต่อไปนี้ในค่า:
    upload_tmp_dir = "C:/php/อัพโหลด"
    สร้างโฟลเดอร์ว่าง "C:\php\upload" เพื่อจัดเก็บไฟล์ชั่วคราวที่อัปโหลดผ่าน HTTP
  5. ค้นหาบรรทัด:
    upload_max_filesize = 2M
    เพิ่มขนาดอัพโหลดไฟล์สูงสุดที่อนุญาตเป็น 16 MB:
    upload_max_filesize = 16M
  6. เชื่อมต่อข้อมูลไลบรารีส่วนขยายโดยไม่ใส่ข้อคิดเห็น:
    ส่วนขยาย=php_bz2.dll
    ส่วนขยาย=php_curl.dll
    ส่วนขยาย=php_gd2.dll
    ส่วนขยาย=php_mbstring.dll
    ส่วนขยาย=php_mysql.dll
    ส่วนขยาย=php_mysqli.dll
  7. ค้นหาบรรทัด:
    ;วันที่.เขตเวลา=
    ยกเลิกหมายเหตุและตั้งค่าเป็นเขตเวลาของสถานที่ของคุณ (คุณสามารถดูรายการเขตเวลาได้ในเอกสารประกอบ):
    date.timezone = "ยุโรป/มอสโก"
  8. ค้นหาบรรทัด:
    ;session.save_path = "/tmp"
    ยกเลิกหมายเหตุและตั้งค่าของคำสั่งนี้เป็นเส้นทางต่อไปนี้:
    session.save_path = "C:/php/tmp"
    สร้างโฟลเดอร์ว่าง "C:\php\tmp" เพื่อจัดเก็บไฟล์เซสชันชั่วคราว
บันทึกการเปลี่ยนแปลงของคุณและปิดไฟล์ php.ini

ถัดไปคุณต้องเพิ่มไดเร็กทอรีด้วยล่าม PHP ที่ติดตั้งไว้ใน PATH ระบบปฏิบัติการ- ในการดำเนินการนี้ให้ทำตามเส้นทาง "Start" -> "Control Panel" -> "System" เปิดแท็บ "Advanced" คลิกปุ่ม " ตัวแปรสภาพแวดล้อม" ในส่วน "ตัวแปรระบบ" ดับเบิลคลิกที่ " บรรทัด Path" เพิ่ม "Variable Value" ลงในฟิลด์ ในส่วนที่มีอยู่แล้ว พาธไปยังไดเร็กทอรีที่ติดตั้ง PHP เช่น "C:\php" (ไม่มีเครื่องหมายคำพูด) โปรดทราบว่าอักขระอัฒภาคจะแยกเส้นทาง ถึง มีการเปลี่ยนแปลงมีผล ให้รีบูตระบบปฏิบัติการ

ตัวอย่างสตริงเส้นทาง:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\php;C:\Program Files\MySQL\MySQL เซิร์ฟเวอร์ 5.5\bin

การติดตั้งและการกำหนดค่าล่าม PHP เสร็จสมบูรณ์

คำอธิบายของไลบรารีที่เชื่อมต่อ:

php_bz2.dll– การใช้ส่วนขยายนี้ PHP จะสามารถสร้างและแตกไฟล์เก็บถาวรในรูปแบบ bzip2 ได้

php_curl.dll– ไลบรารีที่สำคัญและจำเป็นซึ่งช่วยให้คุณสามารถเชื่อมต่อและทำงานกับเซิร์ฟเวอร์โดยใช้โปรโตคอลอินเทอร์เน็ตจำนวนมาก

php_gd2.dll– อีกหนึ่งไลบรารี่ที่ขาดไม่ได้ที่ให้คุณทำงานกับกราฟิกได้ คุณคิดว่าคุณสามารถสร้างหน้า HTML ใน PHP ได้เท่านั้นหรือไม่? แต่ไม่! ด้วย PHP คุณสามารถทำอะไรได้เกือบทุกอย่าง รวมถึงการวาดภาพด้วย

php_mbstring.dll– ไลบรารีประกอบด้วยฟังก์ชันสำหรับการทำงานกับการเข้ารหัสแบบหลายไบต์ ซึ่งรวมถึงการเข้ารหัสภาษาตะวันออก (ญี่ปุ่น จีน เกาหลี) Unicode (UTF-8) และอื่นๆ

php_mysql.dll– ชื่อของห้องสมุดพูดเพื่อตัวเอง - จำเป็นต้องร่วมงานด้วย เซิร์ฟเวอร์ MySQL.

php_mysqli.dll– ไลบรารีนี้เป็นส่วนขยายของไลบรารีก่อนหน้าและประกอบด้วย คุณสมบัติเพิ่มเติม PHP สำหรับการทำงานกับเซิร์ฟเวอร์ MySQL เวอร์ชัน 4.1.3 และสูงกว่า

ไลบรารีเหล่านี้ควรจะเพียงพอสำหรับให้ PHP ทำงานได้อย่างถูกต้อง เมื่อเวลาผ่านไปหากจำเป็นคุณจะสามารถเชื่อมต่อห้องสมุดเพิ่มเติมได้ แต่คุณไม่ควรเชื่อมต่อห้องสมุดเหล่านั้นทั้งหมดในคราวเดียวโดยคิดว่าจะไม่ทำให้โจ๊กเสียด้วยเนย ในกรณีนี้ ห้องสมุดที่เชื่อมต่อมากเกินไป สามารถชะลอตัวลงอย่างมาก งานพีพี.

«

คู่มือส่วนนี้ใช้กับ Windows 98/Me และ Windows NT/2000/XP/2003 PHP จะไม่ทำงานบนแพลตฟอร์ม 16 บิต เช่น Windows 3.1 และบางครั้งเราเรียกแพลตฟอร์มที่รองรับ Windows ว่า Win32

ความคิดเห็น:

Windows XP/2003 ไม่รองรับ PHP 5.5.0 อีกต่อไป

ความคิดเห็น:

Windows 98/Me/NT4/2000 ไม่รองรับ PHP 5.3.0 อีกต่อไป

ความคิดเห็น:

Windows 95 ไม่รองรับ PHP 4.3.0 อีกต่อไป

หากคุณมีสภาพแวดล้อมการพัฒนาเช่น Microsoft Visual Studio คุณสามารถสร้าง PHP จากแหล่งที่มาได้

เมื่อคุณติดตั้ง PHP บน Windows คุณอาจต้องการดาวน์โหลดส่วนขยายต่างๆ เพื่อให้มีฟังก์ชันเพิ่มเติม

คู่มือการติดตั้งด้วยตนเอง

ส่วนนี้มีคำแนะนำสำหรับ การติดตั้งด้วยตนเองและเปิดการตั้งค่า PHP ไมโครซอฟต์ วินโดวส์.

การเลือกและดาวน์โหลดแพ็คเกจการแจกจ่าย PHP

ดาวน์โหลดการกระจาย PHP เป็นไฟล์ zip จาก . มีหลายอย่างรุ่นที่แตกต่างกัน

แพ็คเกจ zip - เลือกเวอร์ชันที่เหมาะสมกับเว็บเซิร์ฟเวอร์ที่คุณใช้:

โครงสร้างและเนื้อหาของแพ็คเกจ PHP

แตกเนื้อหาของไฟล์ zip ลงในไดเร็กทอรีที่คุณเลือก เช่น C:\PHP\

โครงสร้างของโฟลเดอร์และไฟล์ที่แยกจากไฟล์เก็บถาวรจะมีลักษณะดังนี้: ตัวอย่าง #1 โครงสร้างแพ็คเกจ PHP 5ค:\php | +--ผู้พัฒนา | - - |-php5ts.lib -- เวอร์ชันของ php5.lib ที่ไม่รองรับมัลติเธรด |+--ต่อ--

โมดูล DLL

    สำหรับ PHP | - - |-php_bz2.dll | - - |-php_cpdf.dll | - - - +--พิเศษ -- ว่างเปล่า |

    +--pear -- สำเนาเริ่มต้นของ PEAR | - |-go-pear.bat -- สคริปต์การติดตั้ง PEAR |- |-php-cgi.exe -- ไฟล์ปฏิบัติการ CGI |

    |-php-win.exe -- รันสคริปต์โดยไม่ต้องเปิดคอนโซล |

    |-php.exe -- ไฟล์ปฏิบัติการ PHP สำหรับ

    บรรทัดคำสั่ง

(คลี) |

- |-php.ini-development -- การตั้งค่าเริ่มต้น php.ini |

ไฟล์ php.ini มีกฎการดำเนินการ PHP และคำแนะนำสำหรับการทำงานกับสภาพแวดล้อมที่ไฟล์ทำงาน ด้านล่างนี้คือการตั้งค่า php.ini บางส่วนที่สามารถปรับปรุงประสิทธิภาพ PHP บน Windows ได้ บางส่วนเป็นทางเลือก มีคำสั่งอื่นๆ อีกมากมายที่อาจเป็นประโยชน์ในสภาพแวดล้อมของคุณ - ดูรายการคำสั่ง php.ini สำหรับรายละเอียดเพิ่มเติม

คำสั่งบังคับ:

    extension_dir = <путь к директории модулей> - extension_dir ระบุไดเร็กทอรีที่มีโมดูล PHP อยู่ เส้นทางอาจเป็นแบบสัมบูรณ์ (เช่น "C:\PHP\ext") หรือแบบสัมพันธ์ (เช่น ".\ext") โมดูลที่ใช้ใน php.ini จะต้องอยู่ใน extension_dir

    นามสกุล = xxxxx.dll- สำหรับแต่ละปลั๊กอิน คุณต้องระบุคำสั่ง "extension="

    โมดูลจาก extension_dir ที่ทำเครื่องหมายด้วยคำสั่งนี้จะถูกโหลดเมื่อ PHP เริ่มทำงาน log_errors =บน

    - PHP มีกลไกการบันทึกข้อผิดพลาดที่สามารถใช้เพื่อบันทึกข้อผิดพลาดในไฟล์หรือส่งไปยังบริการ (เช่น syslog) กลไกนี้ยังใช้ค่าของคำสั่ง error_log เมื่อ PHP ถูกดำเนินการโดย IIS จะต้องเปิดใช้งาน log_errors ด้วย error_log ที่ถูกต้อง <пусть к файлу лога ошибок> error_log=

    - จำเป็นต้องใช้ error_log เพื่อระบุพาธสัมบูรณ์หรือพาธสัมพันธ์ไปยังไฟล์ซึ่งมีการบันทึกข้อผิดพลาด PHP ไฟล์นี้จะต้องสามารถเขียนได้โดยเว็บเซิร์ฟเวอร์ 0 ตำแหน่งที่พบบ่อยที่สุดสำหรับไฟล์นี้คือไดเร็กทอรี TEMP ชั่วคราวต่างๆ เช่น "C:\inetpub\temp\php-errors.log"

    cgi.force_redirect= 1 - คำสั่งนี้จำเป็นสำหรับการดำเนินการภายใต้ IIS

    นี่เป็นกลไกการป้องกันไดเร็กทอรีที่จำเป็นสำหรับเว็บเซิร์ฟเวอร์อื่น ๆ อย่างไรก็ตาม การเปิดใช้งานภายใต้ IIS จะทำให้เกิดข้อผิดพลาดหลัก PHP บน Windows 1 cgi.fix_pathinfo =

    - ให้การสนับสนุน PATH_INFO ตามข้อกำหนด CGI 0 IIS FastCGI ใช้การตั้งค่านี้

fastcgi.เลียนแบบ=

    - FastCGI ภายใต้ IIS รองรับความสามารถในการระบุโทเค็นความปลอดภัยของไคลเอ็นต์ที่เรียก ซึ่งช่วยให้ IIS สามารถกำหนดบริบทด้านความปลอดภัยที่มีการร้องขอได้ ## fastcgi.logging=

    - การบันทึก FastCGI จะต้องปิดการใช้งานใน IIS หากเปิดใช้งานรายการ ข้อความทั้งหมดของคลาสใดๆ จะได้รับการยอมรับว่าเป็นข้อผิดพลาดโดย FastCGI ซึ่งจะทำให้ IIS ส่งข้อยกเว้น HTTP 500 คำสั่งเพิ่มเติม- จำนวนหน่วยความจำที่ใช้ได้สำหรับกระบวนการ PHP มีหน่วยเป็น MB

    ค่าเริ่มต้นคือ 128 ซึ่งเพียงพอสำหรับแอปพลิเคชัน PHP ส่วนใหญ่ แอปพลิเคชั่นที่ซับซ้อนบางตัวอาจต้องใช้หน่วยความจำเพิ่มเติม display_errors =ปิด

    - คำสั่งกำหนดข้อผิดพลาดที่ควรส่งคืนไปยังเว็บเซิร์ฟเวอร์เพื่อการบันทึกเพิ่มเติม เมื่อตั้งค่าเป็น "เปิด" PHP จะรายงานข้อผิดพลาดทุกประเภทที่ระบุไว้ในคำสั่ง error_reporting <пути к директориям, разделенные точкой с запятой> เพื่อเหตุผลด้านความปลอดภัย ขอแนะนำให้ตั้งค่านี้เป็น "ปิด" บนเซิร์ฟเวอร์ที่ใช้งานจริง เพื่อป้องกันไม่ให้เอาต์พุตข้อผิดพลาดถูกส่งไปยังผู้ใช้ เนื่องจากอาจมีข้อมูลที่คุกคามความปลอดภัยของแอปพลิเคชัน open_basedir =ตัวอย่างเช่น openbasedir="C:\inetpub\wwwroot;C:\inetpub\temp" คำสั่งนี้ระบุเส้นทางไปยังไดเรกทอรีที่อนุญาตให้ดำเนินการ PHP

    ระบบไฟล์ คำสั่งเพิ่มเติม- การดำเนินการใดๆ กับไฟล์และไดเร็กทอรีที่อยู่นอกเส้นทางที่ระบุจะส่งผลให้เกิดข้อผิดพลาด คำสั่งเพิ่มเติมคำสั่งนี้มีประโยชน์อย่างยิ่งในการป้องกันการเข้าถึง PHP ที่ติดตั้งไว้ในสภาพแวดล้อมโฮสติ้งที่ใช้ร่วมกัน เพื่อป้องกันไม่ให้สคริปต์ PHP เข้าถึงไฟล์ใดๆ ที่อยู่นอกไดเร็กทอรีรากของเว็บไซต์

upload_max_filesize=

และ post_max_size =

- ขนาดสูงสุดที่อนุญาตของไฟล์ที่อัพโหลดและข้อมูลที่ส่งตามลำดับ ค่าของคำสั่งเหล่านี้ควรเพิ่มขึ้นหากแอปพลิเคชัน PHP จำเป็นต้องจัดการกับการอัปโหลดไฟล์ขนาดใหญ่ เช่น ไฟล์รูปภาพหรือวิดีโอ หลังจากติดตั้ง PHP บนระบบของคุณแล้ว ขั้นตอนต่อไปคือการเลือกเว็บเซิร์ฟเวอร์และกำหนดค่าเพิ่มเติมให้ทำงานกับ PHP เลือกเว็บเซิร์ฟเวอร์เฉพาะในสารบัญสำหรับเนื้อหานี้ไมโครซอฟต์ IIS 5.1 และ IIS 6.0

ส่วนนี้ประกอบด้วยคำแนะนำสำหรับการตั้งค่า Internet Information Services (IIS) 5.1 และ IIS 6.0 ด้วยตนเองเพื่อให้ทำงานกับ PHP บน Microsoft Windows XP และ Windows Server 2003 สำหรับคำแนะนำในการตั้งค่า IIS 7.0 และเวอร์ชันที่ใหม่กว่าบน Windows Vista

วินโดวส์เซิร์ฟเวอร์

ความคิดเห็น:

2008, Windows 7 และ Windows Server 2008 R2 อ้างอิงถึง Microsoft IIS 7.0 และใหม่กว่า

การกำหนดค่า IIS เพื่อประมวลผลคำขอ PHP

ดาวน์โหลดและติดตั้ง PHP ตามคำแนะนำที่อธิบายไว้ในขั้นตอนการติดตั้งด้วยตนเอง

แนะนำให้ใช้การสร้าง PHP ที่ไม่ปลอดภัยเมื่อใช้ IIS มีบิลด์ที่ไม่ปลอดภัยสำหรับเธรดอยู่ที่

กำหนดการตั้งค่าเฉพาะ CGI- และ FastCGI ในไฟล์ php.ini ดังแสดงด้านล่าง:

เพื่อเปิดใช้งานการสนับสนุน FastCGI วินโดวส์วิสต้า SP1 และ Windows 7:

    ในเมนู "Start" เลือก "Run" ในหน้าต่างที่ปรากฏขึ้นให้ป้อน "Optionalfeatures.exe" จากแป้นพิมพ์แล้วคลิก "Ok";

    ในหน้าต่างที่เปิดขึ้น " ส่วนประกอบของวินโดวส์"ขยายโฟลเดอร์ "IIS Services", "Internet Services", "Application Development Components" และทำเครื่องหมายที่ช่องถัดจาก "CGI";

    คลิกตกลงและรอให้กระบวนการติดตั้งเสร็จสิ้น


หากต้องการเปิดใช้งานการสนับสนุน FastCGI บน Windows Server 2008 และ Windows Server 2008 R2:

    ใน Windows ให้เปิดเมนู Start เลือก "Run:" พิมพ์ "CompMgmtLauncher" จากแป้นพิมพ์แล้วคลิก "Ok";

    หากไม่มีบทบาท "เว็บเซิร์ฟเวอร์ (IIS)" ในแท็บ "บทบาท" ให้เพิ่มโดยเลือก "เพิ่มบทบาท"

    หากมีบทบาท "เว็บเซิร์ฟเวอร์ (IIS)" ให้เลือก "เลือกบริการบทบาท" และทำเครื่องหมายที่ช่องถัดจาก "CGI" ในกลุ่ม "ส่วนประกอบการพัฒนาแอปพลิเคชัน"


การกำหนดค่า IIS เพื่อจัดการคำขอ PHP

ดาวน์โหลดและติดตั้ง PHP ตามคำแนะนำที่ให้ไว้ในคำอธิบายการติดตั้ง

ความคิดเห็น:

เปลี่ยนการตั้งค่า CGI และ FastCGI ในไฟล์ php.ini ดังแสดงด้านล่าง:

ตัวอย่าง #8 การตั้งค่า CGI และ FastCGI ใน php.ini

fastcgi.impersonate = 1 fastcgi.logging = 0 cgi.fix_pathinfo=1 cgi.force_redirect = 0

กำหนดค่าตัวจัดการ IIS สำหรับ PHP โดยใช้ IIS Management Interface หรือผ่านทางบรรทัดคำสั่ง

การใช้อินเทอร์เฟซการจัดการ IIS เพื่อสร้างตัวจัดการ PHP

ขั้นตอนต่อไปนี้จะช่วยให้คุณสร้างตัวจัดการ IIS สำหรับ PHP ใน IIS Management Interface:



การใช้บรรทัดคำสั่งเพื่อสร้างการแมปตัวจัดการ PHP

ใช้คำสั่งด้านล่างเพื่อสร้างกลุ่มกระบวนการ IIS FastCGI ซึ่งจะใช้ php-cgi.exe เพื่อดำเนินการตามคำขอ PHP แทนที่พารามิเตอร์ fullPath ด้วยเส้นทางที่แน่นอนไปยังไฟล์ php-cgi.exe

ตัวอย่าง #9 การสร้างพูลกระบวนการ IIS FastCGI

%windir%\system32\inetsrv\appcmd ตั้งค่า config /section:system.webServer/fastCGI ^ /+

การกำหนดค่า IIS เพื่อจัดการคำขอ PHP เฉพาะจากบรรทัดคำสั่งแสดงอยู่ด้านล่าง แทนที่ค่าของพารามิเตอร์ scriptProcessor ด้วยพาธสัมบูรณ์ไปยังไฟล์ php-cgi.exe

ตัวอย่าง #10 การสร้างการแมปตัวจัดการคำขอ PHP

%windir%\system32\inetsrv\appcmd ตั้งค่า config /section:system.webServer/handlers ^ /+

คำสั่งนี้สร้างการแมปตัวจัดการสำหรับ IIS สำหรับไฟล์ที่มีนามสกุล *.php ซึ่งเป็นผลลัพธ์และประมวลผลโดยโมดูล FastCGI

ความคิดเห็น:

ในขั้นตอนนี้ การติดตั้งและการกำหนดค่าจะเสร็จสมบูรณ์ คำแนะนำต่อไปนี้เป็นทางเลือก แต่ขอแนะนำเป็นอย่างยิ่งเพื่อให้ได้ฟังก์ชันและประสิทธิภาพ PHP ที่เหมาะสมที่สุดบน IIS

การแสดงและการเข้าถึงระบบไฟล์

เมื่อใช้ IIS ขอแนะนำให้เปิดใช้งานมุมมอง FastCGI ใน PHP สิ่งนี้ถูกควบคุมโดยคำสั่ง fastcgi.impersonate ในไฟล์ php.ini

เมื่อเปิดใช้งานการเลียนแบบ PHP จะดำเนินการระบบไฟล์ทั้งหมดภายใต้บัญชีที่ระบุไว้ระหว่างการรับรองความถูกต้องของ IIS เพื่อให้แน่ใจว่าหากมีกระบวนการ PHP ทั่วไปสำหรับไซต์ IIS ทั้งหมด สคริปต์ PHP ของไซต์จะไม่สามารถเข้าถึงไฟล์ของกันและกันได้ ตราบใดที่ IIS ใช้บัญชีที่แตกต่างกันสำหรับแต่ละไซต์

ตัวอย่างเช่น ในการตั้งค่าเริ่มต้นของ IIS 7 การรับรองความถูกต้องแบบไม่ระบุชื่อจะถูกเปิดใช้งานภายใต้ผู้ใช้ IUSR มาตรฐาน ซึ่งหมายความว่าในขณะที่ให้สิทธิ์ IIS ในการรันสคริปต์ PHP คุณยังต้องให้สิทธิ์บัญชี IUSR เพื่ออ่านสคริปต์นี้ด้วย

หากแอปพลิเคชัน PHP จำเป็นต้องเขียนลงในไฟล์หรือโฟลเดอร์บางไฟล์ บัญชี IUSR ควรได้รับสิทธิ์ในการเขียน

ในการตัดสินใจว่าจะใช้ผู้ใช้รายใดในการรับรองความถูกต้องใน IIS 7 คุณสามารถใช้คำสั่งต่อไปนี้

ความคิดเห็น:

แทนที่ "เว็บไซต์เริ่มต้น" ด้วยชื่อ IIS ของไซต์ที่คุณใช้งานอยู่ ในเอาต์พุต ในการกำหนดค่า XML ให้ดูที่แอตทริบิวต์ชื่อผู้ใช้

ตัวอย่าง #11 การกำหนดบัญชีที่ใช้โดย IIS สำหรับการรับรองความถูกต้องแบบไม่ระบุชื่อ

%windir%\system32\inetsrv\appcmd.exe รายการกำหนดค่า "เว็บไซต์เริ่มต้น" ^ /section:anonymousAuthentication

หากแอตทริบิวต์ชื่อผู้ใช้หายไปจากองค์ประกอบ anonymousAuthentication หรือถูกตั้งค่าเป็นสตริงว่าง ข้อมูลเฉพาะตัวของพูลแอปพลิเคชันจะถูกใช้เป็นแบบไม่ระบุชื่อสำหรับเว็บไซต์นี้

หากต้องการเปลี่ยนการตั้งค่าการเข้าถึงไฟล์หรือโฟลเดอร์ ให้ใช้อินเทอร์เฟซผู้ใช้ Windows Explorer หรือคำสั่ง icacls

ตัวอย่าง #12 การตั้งค่าสิทธิ์การเข้าถึงไฟล์

icacls C:\inetpub\wwwroot\upload /ให้ IUSR:(OI)(CI)(M)

การตั้งค่า index.php เป็นเอกสารเริ่มต้นใน IIS

ตามค่าเริ่มต้น IIS ไม่มีชื่อเอกสารที่ตั้งค่าให้จัดการคำขอ HTTP ตามค่าเริ่มต้น

การกำหนดค่าการตั้งค่า IIS FastCGI สำหรับการรีไซเคิลกระบวนการ PHP โดยใช้คำสั่งมีดังนี้

ตัวเลือก FastCGI instanceMaxRequests จะกำหนดจำนวนคำขอสูงสุดที่สามารถประมวลผลโดยกระบวนการ php-cgi.exe หนึ่งกระบวนการก่อนที่ IIS จะเริ่มปิดการใช้งาน

ตัวแปรสภาพแวดล้อม PHP PHP_FCGI_MAX_REQUESTS กำหนดจำนวนคำขอที่กระบวนการ php-cgi.exe จะดำเนินการจนกว่าจะเริ่มลบคำขอเหล่านั้น

แน่นอนว่าค่าที่ตั้งไว้สำหรับ FastCGI InstanceMaxRequests นั้นน้อยกว่าหรือเท่ากับ PHP_FCGI_MAX_REQUESTS

ตัวอย่าง #14 การตั้งค่า FastCGI และ PHP ที่สร้างขึ้นใหม่

%windir%\system32\inetsrv\appcmd.exe ตั้งค่า config -section:system.webServer/fastCgi ^ /.instanceMaxRequests:10000 %windir%\system32\inetsrv\appcmd.exe ตั้งค่า config -section:system.webServer/fastCgi ^ / +".ตัวแปรสภาพแวดล้อม^"

การตั้งค่าการหมดเวลา FastCGI

การเพิ่มพารามิเตอร์การหมดเวลาสำหรับ FastCGI จะเสร็จสิ้นหากมีสคริปต์ PHP ที่ใช้เวลานาน

พารามิเตอร์สองตัวควบคุมการหมดเวลา: กิจกรรมหมดเวลา และ ขอหมดเวลา ใช้คำสั่งด้านล่างเพื่อเปลี่ยนการตั้งค่าการหมดเวลา

แน่นอนคุณต้องแทนที่ค่าของพารามิเตอร์ fullPath ด้วยเส้นทางแบบเต็มไปยังไฟล์ php-cgi.exe

ตัวอย่าง #15 การกำหนดค่าการตั้งค่าการหมดเวลา FastCGI

%windir%\system32\inetsrv\appcmd.exe ตั้งค่าการกำหนดค่า -section:system.webServer/fastCgi ^ /.activityTimeout:"90" /commit:apphost %windir%\system32\inetsrv\appcmd.exe ตั้งค่า config -section:system .webServer/fastCgi ^ /.requestTimeout:"90" /commit:apphost การเปลี่ยนตำแหน่งของไฟล์ php.iniมีสองวิธีในการกำหนดค่า PHP ให้ทำงานกับ Apache 1.3.x บน Windows อย่างแรกคือการใช้ไบนารี CGI (php.exe สำหรับ PHP 4 และ php-cgi.exe สำหรับ PHP 5) อย่างที่สองคือการใช้ Apache Module DLL ในทั้งสองกรณี คุณต้องแก้ไข httpd.conf เพื่อกำหนดค่า Apache ให้ทำงานกับ PHP และรีสตาร์ทเซิร์ฟเวอร์ ปัจจุบันโมดูล SAPI มีเสถียรภาพมากขึ้นใน Windows ดังนั้นเราขอแนะนำให้ใช้แทน CGI เนื่องจากมีความโปร่งใสและปลอดภัยมากขึ้นแม้ว่าจะมีตัวเลือกมากมายสำหรับการกำหนดค่า PHP ภายใต้ Apache แต่ก็ค่อนข้างง่ายสำหรับผู้เริ่มต้น โปรดดูเอกสารประกอบของ Apache สำหรับคำแนะนำในการกำหนดค่าเพิ่มเติม

ความคิดเห็น:

อย่าลืมรีบูตเซิร์ฟเวอร์หลังจากเปลี่ยนไฟล์การกำหนดค่า

ตัวอย่างเช่นทีม

NET หยุด APACHE

นี่ถือว่า PHP ได้รับการติดตั้งใน c:\php เปลี่ยนเส้นทางหากไม่เป็นเช่นนั้น

# เพิ่มที่ส่วนท้ายของส่วน LoadModule # อย่าลืมคัดลอกไฟล์นี้จากไดเรกทอรี sapi! LoadModule php4_module "C:/php/php4apache.dll" # เพิ่มที่ส่วนท้ายของส่วน AddModule AddModule mod_php4.c

# เพิ่มที่ส่วนท้ายของส่วน LoadModule LoadModule php5_module "C:/php/php5apache.dll" # เพิ่มที่ส่วนท้ายของส่วน AddModule AddModule mod_php5.c

สำหรับทั้งสองเวอร์ชัน:

# เพิ่มบรรทัดนี้ภายใน วงเล็บปีกกาแบบมีเงื่อนไข AddType application/x-httpd-php .php # สำหรับไฟล์ .phps ที่เน้นไวยากรณ์ ให้เพิ่ม AddType application/x-httpd-php-source .phps ด้วย

การติดตั้งเป็นไฟล์ CGI ไบนารี

หากแตกไฟล์ PHP ไปที่ C:\php\ ตามที่อธิบายไว้ในส่วนขั้นตอนการติดตั้งด้วยตนเอง คุณจะต้องเพิ่มบรรทัดต่อไปนี้ลงในไฟล์การกำหนดค่า Apache:

ตัวอย่าง #18 PHP และ Apache 1.3.x เป็น CGI

โปรดทราบว่าบรรทัดที่สองในรายการด้านบนมีอยู่แล้วใน httpd.conf แต่จะมีการใส่ความคิดเห็นไว้ นอกจากนี้ อย่าลืมแทนที่ c:/php/ ด้วยพาธ PHP จริงของคุณ

ความสนใจ

“ความปลอดภัยของซีจีไอ”

เมื่อติดตั้ง PHP เป็น CGI ไม่มีตัวเลือกที่สะดวกสำหรับการเน้นไวยากรณ์ของซอร์ส PHP เหมือนกับเมื่อติดตั้งเป็นโมดูล หากต้องการใช้คุณต้องใช้ฟังก์ชัน ไฮไลท์_ไฟล์()- ในการดำเนินการนี้ เพียงสร้างสคริปต์ PHP ด้วยโค้ดต่อไปนี้: .

อาปาเช่ 2.x บนไมโครซอฟต์ วินโดวส์

ส่วนนี้ประกอบด้วยคำแนะนำในการติดตั้ง PHP สำหรับ Apache 2.x บน ระบบไมโครซอฟต์หน้าต่าง

ความคิดเห็น: รองรับอาปาเช่ 2.2

ผู้ใช้ Apache 2.2 ควรทราบด้วย ไฟล์ DLLสำหรับ Apache 2.2 จะเรียกว่า php5apache2_2.dll แทนที่จะเป็น php5apache2.dll และใช้ได้เฉพาะกับ PHP 5.2.0 และใหม่กว่าเท่านั้น

ขอแนะนำให้คุณตรวจสอบ » เอกสารประกอบ Apache เพื่อทำความเข้าใจพื้นฐานเกี่ยวกับ Apache 2.x Server นอกจากนี้ ก่อนที่จะอ่านความช่วยเหลือนี้ โปรดทราบ » Windows Best Practices สำหรับ Apache 2.x

Apache 2.x ได้รับการออกแบบมาให้ทำงานบน Windows เวอร์ชันเซิร์ฟเวอร์ เช่น Windows NT 4.0, Windows 2000, Windows XP หรือ Windows 7 แม้ว่า Apache 2.x จะสามารถใช้งานบน Windows 9x ได้ แต่แพลตฟอร์มเหล่านี้ยังไม่รองรับอย่างสมบูรณ์และบางแพลตฟอร์ม คุณสมบัติจะไม่ทำงานอย่างถูกต้อง ไม่มีแผนที่จะแก้ไขสถานการณ์นี้

ดาวน์โหลดเวอร์ชันล่าสุดของ » Apache 2.x และ PHP เวอร์ชันที่เหมาะสม

มีสามวิธีในการติดตั้ง PHP สำหรับ Apache บน Windows

ความคิดเห็น: คุณสามารถเรียกใช้ PHP เป็นตัวเรนเดอร์ เช่น CGI หรือภายใต้ FastCGI

โปรดจำไว้ว่าเมื่อระบุเส้นทางในไฟล์การกำหนดค่า Apache บน Windows เครื่องหมายแบ็กสแลชทั้งหมด เช่น c:\directory\file.ext จะต้องเปลี่ยนเป็นเครื่องหมายทับ: c:/directory/file.ext เส้นทางไดเรกทอรีอาจต้องมีเครื่องหมายทับต่อท้ายด้วย

การติดตั้ง PHP เป็นตัวจัดการภายใต้ Apache

คุณต้องเพิ่มบรรทัดต่อไปนี้ลงในไฟล์การกำหนดค่า Apache httpd.conf เพื่อโหลดโมดูล PHP สำหรับ Apache 2.x:

ตัวอย่าง #19 PHP เป็นตัวจัดการ Apache 2.x

ความคิดเห็น: # LoadModule php5_module "c:/php/php5apache2.dll" AddHandler application/x-httpd-php .php # การกำหนดค่าเส้นทางไปยัง php.ini PHPIniDir "C:/php"

อย่าลืมระบุเส้นทางจริงไปยังไดเร็กทอรี PHP แทน C:/php/ ในตัวอย่างด้านบน ดูแลว่าคำสั่ง LoadModule ใช้ php5apache2.dll หรือ php5apache2_2.dll และตรวจสอบให้แน่ใจว่าไฟล์ที่ระบุนั้นอยู่ในเส้นทางที่คุณระบุในคำสั่งจริงๆ การกำหนดค่าข้างต้นจะทำให้ PHP ประมวลผลไฟล์ใดๆ ที่มีนามสกุล .php ได้ แม้ว่าจะมีนามสกุลอื่นๆ ก็ตาม ตัวอย่างเช่น ไฟล์ชื่อ example.php.txt จะถูกเรียกใช้โดยตัวจัดการ PHP เพื่อให้แน่ใจว่าเฉพาะไฟล์นั้นมีส่วนขยาย

.php จะเปิดตัว ใช้การกำหนดค่าต่อไปนี้:

แอปพลิเคชัน SetHandler/x-httpd-php

ใช้ PHP เป็น CGI

คุณควรดูเอกสารประกอบ » Apache CGI เพื่อความเข้าใจที่สมบูรณ์ยิ่งขึ้นเกี่ยวกับการรัน CGI ภายใต้ Apache

หากต้องการเรียกใช้ PHP เป็น CGI คุณต้องวางไฟล์ php-cgi ของคุณในไดเร็กทอรีที่กำหนดให้เป็นไดเร็กทอรี CGI โดยใช้คำสั่ง ScriptAlilas

หลังจากนี้คุณต้องเพิ่มบรรทัด #! ในไฟล์ PHP ซึ่งชี้ไปยังตำแหน่งของไฟล์ปฏิบัติการ PHP

ตัวอย่าง #20 PHP เป็น CGI ภายใต้ Apache 2.x

ความสนใจ

#!C:/php/php.exe

ด้วยการใช้การติดตั้ง CGI เซิร์ฟเวอร์ของคุณจะเปิดรับช่องโหว่ที่เป็นไปได้หลายประการ โปรดดูส่วนความปลอดภัยของ CGI เพื่อเรียนรู้วิธีป้องกันตนเองจากการโจมตีดังกล่าว

ใช้งาน PHP ภายใต้ FastCGI

การรัน PHP ภายใต้ FastCGI มีข้อดีมากกว่าการรัน PHP ในรูปแบบ CGI หลายประการ การติดตั้งค่อนข้างง่าย:

การตั้งค่า NSAPI บนเซิร์ฟเวอร์ Sun, iPlanet และ Netscape

  • หากต้องการติดตั้ง PHP ด้วย NSAPI ให้ทำดังต่อไปนี้:
  • คัดลอก php4ts.dll ไปยัง systemroot ของคุณ (ไดเร็กทอรีที่คุณติดตั้ง Windows)

    สร้างการเชื่อมโยงไฟล์จากบรรทัดคำสั่ง

  • ใน Netscape Enterprise Administration Server ให้สร้างประเภท mime ใหม่ (หมวดหมู่: ประเภท, ประเภทเนื้อหา: magnus-internal/x-httpd-php, ส่วนต่อท้ายไฟล์: php)
  • แก้ไข magnus.conf (สำหรับเซิร์ฟเวอร์ >= 6) หรือ obj.conf (สำหรับเซิร์ฟเวอร์< 6) and add the following: You should place the lines after ประเภท mime init.

    Init fn="load-modules" funcs="php4_init,php4_execute,php4_auth_trans" shlib="c:/php/sapi/php4nsapi.dll" Init fn="php4_init" LateInit="yes" errorString="ไม่สามารถเริ่มต้น PHP! "

    (PHP >= 4.3.3) php_iniพารามิเตอร์เป็นทางเลือก แต่คุณสามารถวาง php.ini ของคุณในไดเร็กทอรีการกำหนดค่าเว็บเซิร์ฟเวอร์ของคุณได้

    กำหนดค่าวัตถุเริ่มต้นใน obj.conf (สำหรับคลาสเซิร์ฟเวอร์เสมือนใน vserver.obj.conf): ใน section, place this line necessarily after all "ObjectType" and before all "AddLog" lines:

    Service fn="php4_execute" type="magnus-internal/x-httpd-php"

    (PHP >= 4.3.3) As additional parameters you can add some special php.ini -values, for example you can set a docroot="/path/to/docroot" specific to the context php4_execute is called. For boolean ini-keys please use 0/1 as value, not "On","Off",... (this will not work correctly), e.g. zlib.output_compression=1 instead of zlib.output_compression="On"

    This is only needed if you want to configure a directory that only consists of PHP scripts (same like a cgi-bin directory):

    ObjectType fn="force-type" type="magnus-internal/x-httpd-php" Service fn=php4_execute

    หลังจากนั้น คุณสามารถกำหนดค่าไดเร็กทอรีในเซิร์ฟเวอร์การดูแลระบบและกำหนดสไตล์ให้กับไดเร็กทอรีได้ x-httpd-php.dll- ไฟล์ทั้งหมดในนั้นจะถูกดำเนินการเป็น PHP

  • นี่เป็นเรื่องดีที่จะซ่อนการใช้งาน PHP โดยการเปลี่ยนชื่อไฟล์เป็น .html
  • เริ่มบริการเว็บของคุณใหม่และใช้การเปลี่ยนแปลง
  • ความคิดเห็น:

    ทำสำหรับแต่ละอินสแตนซ์ของเว็บเซิร์ฟเวอร์ที่คุณต้องการให้ PHP ทำงาน

    ขนาดสแต็กที่ PHP ใช้ขึ้นอยู่กับการกำหนดค่าของเว็บเซิร์ฟเวอร์ หากคุณประสบปัญหากับสคริปต์ PHP ที่มีขนาดใหญ่มาก ขอแนะนำให้ยกระดับด้วยเซิร์ฟเวอร์ผู้ดูแลระบบ (ในส่วน "MAGNUS EDITOR")

    สภาพแวดล้อม CGI และการแก้ไขที่แนะนำใน php.ini สิ่งสำคัญในการเขียนสคริปต์ PHP คือข้อเท็จจริงที่ว่า Sun JSWS/Sun ONE WS/iPlanet/Netscape เป็นเว็บเซิร์ฟเวอร์แบบมัลติเธรด ด้วยเหตุนี้คำขอทั้งหมดจึงทำงานในพื้นที่กระบวนการเดียวกัน (พื้นที่ของเว็บเซิร์ฟเวอร์เอง) และพื้นที่นี้จึงมีสภาพแวดล้อมเดียวเท่านั้น หากคุณต้องการรับตัวแปร CGI เช่น, PATH_INFO HTTP_HOST ฯลฯ มันไม่ใช่วิธีที่ถูกต้องในการลองใช้วิธี PHP แบบเก่าด้วยรับเท็นวี() หรือวิธีที่คล้ายกัน (ลงทะเบียน globals กับสภาพแวดล้อม$_ENV

    ความคิดเห็น:

    - คุณจะได้รับสภาพแวดล้อมของเว็บเซิร์ฟเวอร์ที่ทำงานอยู่โดยไม่มีตัวแปร CGI ที่ถูกต้อง!

    เหตุใดจึงมีตัวแปร CGI (ไม่ถูกต้อง) ในสภาพแวดล้อม คำตอบ: นี่เป็นเพราะคุณเริ่มต้นกระบวนการเว็บเซิร์ฟเวอร์จากเซิร์ฟเวอร์ผู้ดูแลระบบซึ่งรันสคริปต์เริ่มต้นของเว็บเซิร์ฟเวอร์ คุณต้องการเริ่มต้นเป็นสคริปต์ CGI (สคริปต์ CGI ภายในเซิร์ฟเวอร์ผู้ดูแลระบบ!) นี่คือสาเหตุที่สภาพแวดล้อมของเว็บเซิร์ฟเวอร์ที่เริ่มต้นมีตัวแปรสภาพแวดล้อม CGI อยู่ด้วยคุณสามารถ

    เพียงเปลี่ยนสคริปต์ของคุณเพื่อรับตัวแปร CGI ในวิธีที่ถูกต้องสำหรับ PHP 4.x โดยใช้ superglobal $_SERVER หากคุณมีสคริปต์เก่าซึ่งใช้ $HTTP_HOST ฯลฯ คุณควรเปิดใช้งาน register_globalsใน php.ini และเปลี่ยนลำดับตัวแปรด้วย (สำคัญ: ลบ "อี"จากนั้นเพราะคุณไม่จำเป็นต้องมีสภาพแวดล้อมที่นี่):

    Variables_order = "GPCS" register_globals = เปิด

    การใช้งานพิเศษสำหรับหน้าแสดงข้อผิดพลาดหรือรายการไดเร็กทอรีที่สร้างขึ้นเอง (PHP >= 4.3.3)

    คุณสามารถใช้ PHP เพื่อสร้างหน้าแสดงข้อผิดพลาดได้ "404 ไม่พบ" หรือคล้ายกัน เพิ่มบรรทัดต่อไปนี้ลงในวัตถุใน obj.conf สำหรับทุกหน้าข้อผิดพลาดที่คุณต้องการเขียนทับ:

    ข้อผิดพลาด fn="php4_execute" code=XXX script="/path/to/script.php"

    ที่ไหน XXXคือ HTTP รหัสข้อผิดพลาด- กรุณาลบอันอื่นด้วย ข้อผิดพลาดคำสั่งที่อาจรบกวนคุณ หากคุณต้องการวางหน้าสำหรับข้อผิดพลาดทั้งหมดที่อาจเกิดขึ้น ให้ปล่อยไว้รหัส

    พารามิเตอร์ออก สคริปต์ของคุณจะได้รับรหัสสถานะ HTTP ด้วย $_SERVER["ERROR_TYPE"] ความเป็นไปได้อีกอย่างหนึ่งคือการสร้างรายการไดเร็กทอรีที่สร้างขึ้นเองเพียงสร้างสคริปต์ PHP ซึ่งแสดงรายการไดเร็กทอรีและแทนที่บรรทัดบริการเริ่มต้นที่เกี่ยวข้อง

    type="magnus-ภายใน/ไดเรกทอรี"

    ใน obj.conf โดยมีดังต่อไปนี้:

    บริการ fn="php4_execute" type="magnus-internal/directory" script="/path/to/script.php"

      สำหรับทั้งหน้ารายการข้อผิดพลาดและไดเรกทอรี URI ดั้งเดิมและ URI ที่แปลจะอยู่ในตัวแปร $_SERVER["PATH_INFO"] และ $_SERVER["PATH_TRANSLATED"]

      รายการนี้อธิบายการติดตั้งโมดูล ISAPI สำหรับการทำงานกับเซิร์ฟเวอร์ Sambar บน Windows :

      ค้นหาไฟล์ชื่อ mappings.ini (ในโฟลเดอร์ config) ในไดเร็กทอรีการติดตั้ง Sambar ของคุณ

      เปิด mappings.ini และเพิ่มบรรทัดต่อไปนี้ข้างใต้

      ตัวอย่าง #22 การกำหนดค่า ISAPI สำหรับ Sambar

      #สำหรับ PHP 4 *.php = c:\php\php4isapi.dll #สำหรับ PHP 5 *.php = c:\php\php5isapi.dll

    ความคิดเห็น:

    (หากติดตั้ง PHP ใน c:\php .) รีสตาร์ท Sambar เพื่อให้การเปลี่ยนแปลงมีผลหากคุณต้องการใช้ PHP เพื่อสื่อสารกับทรัพยากรบนคอมพิวเตอร์เครื่องอื่นบนเครือข่ายของคุณ คุณจะต้องเปลี่ยนบัญชีที่ใช้โดยบริการเซิร์ฟเวอร์ Sambar ตามค่าเริ่มต้น นี่คือ LocalSystem และทรัพยากรระยะไกลจะไม่สามารถเข้าถึงได้

    บัญชี

    สามารถแก้ไขได้โดยใช้ตัวเลือกบริการของยูทิลิตี้การดูแลระบบจากแผงควบคุม Windows

    Xitami บนระบบปฏิบัติการ Microsoft Windows

    ความคิดเห็น: สำคัญสำหรับผู้ใช้ CGI

    การติดตั้งโมดูล PHP บน Windows OS

    หลังจากติดตั้ง PHP และเว็บเซิร์ฟเวอร์บน Windows คุณอาจต้องติดตั้งบางโมดูลเพื่อเพิ่มฟังก์ชันการทำงาน คุณสามารถเลือกโมดูลที่จะโหลดเมื่อ PHP เริ่มทำงานโดยการแก้ไขไฟล์ php.ini ของคุณ คุณยังสามารถโหลดโมดูลแบบไดนามิกในสคริปต์ของคุณโดยใช้ฟังก์ชันนี้

    อาปาเช่สำหรับ Windows XP

    ปัจจุบันทุกอย่าง รุ่นปัจจุบัน Apache ทำงานบน Windows 7 SP1, Vista SP2, 8 / 8.1, 10, Server 2008 SP2 / R2 SP1, Server 2012 / R2, Server 2016

    ดังนั้นจึงไม่สามารถเรียกใช้ Apache เวอร์ชันใหม่บน Windows XP ได้ในขณะนี้ นอกจากนี้ Apache จะไม่ทำงานบน Windows Server 2003

    บน Windows XP คุณสามารถรันได้เฉพาะ Apache 2.2 เท่านั้น และของคุณ ระบบวินโดวส์ XP ต้องมี Service Pack 3

    ก่อนดำเนินการต่อ ฉันขอแนะนำให้คุณอัปเกรดเป็นเวอร์ชันที่ใหม่กว่า เวอร์ชันวินโดวส์— เริ่มต้นจากเจ็ดคุณสามารถติดตั้ง Apache และ PHP เวอร์ชันใหม่ ๆ ได้ Apache และ PHP เวอร์ชันเก่าอาจมีข้อบกพร่อง หากคุณวางแผนที่จะใช้ เว็บเซิร์ฟเวอร์ท้องถิ่นหากต้องการเรียนรู้การบริหารแอปพลิเคชันเว็บและการเขียนโปรแกรม PHP Windows XP ไม่ใช่แพลตฟอร์มที่ดีที่สุด - ที่นี่คุณจะต้องจัดการกับซอฟต์แวร์ที่ล้าสมัยมายาวนาน

    ถ้าฉันไม่มั่นใจก็ทำตามนี้ คำแนะนำทีละขั้นตอนเพื่อรัน Apache บน Windows XP

    การสร้างโครงสร้างเว็บเซิร์ฟเวอร์

    มาสร้างโครงสร้างไดเร็กทอรีของเซิร์ฟเวอร์ของเรากัน แนวคิดหลักคือการแยกไฟล์ปฏิบัติการและไฟล์เว็บไซต์ด้วยฐานข้อมูล สะดวกสำหรับการบำรุงรักษาเซิร์ฟเวอร์รวมถึงการสำรองข้อมูล

    ที่รากของดิสก์ ค:\สร้างไดเรกทอรี เซิร์ฟเวอร์- ในไดเร็กทอรีนี้ ให้สร้างไดเร็กทอรีย่อย 2 ไดเร็กทอรี: ถังขยะ(สำหรับไฟล์ปฏิบัติการ) และ ข้อมูล.

    ไปที่ไดเร็กทอรี ข้อมูลและสร้างโฟลเดอร์ย่อยที่นั่น ดี.บี.(สำหรับฐานข้อมูล) และ htdocs(สำหรับเว็บไซต์)

    วิธีติดตั้ง Apache บน Windows XP

    เลือก กำหนดเองการติดตั้ง:

    เปลี่ยนโฟลเดอร์การติดตั้งเป็น C:\เซิร์ฟเวอร์\bin\Apache2.2\:

    เมื่อการติดตั้งเสร็จสมบูรณ์ ให้เปิด http://localhost/ :

    ไปที่ไดเร็กทอรี C:\เซิร์ฟเวอร์\bin\Apache2.2\conf\และเปิดไฟล์ httpd.confโปรแกรมแก้ไขข้อความใด ๆ

    ในนั้นเราจำเป็นต้องแทนที่หลายบรรทัด

    #ชื่อเซิร์ฟเวอร์ โลคัลโฮสต์:80

    ชื่อเซิร์ฟเวอร์โฮสต์ท้องถิ่น:80

    DocumentRoot "C:/Server/bin/Apache2.2/htdocs"

    DocumentRoot "C:/เซิร์ฟเวอร์/ข้อมูล/htdocs/"

    DirectoryIndexดัชนี.html

    DirectoryIndex.php.index.html.index.htm

    # AllowOverride ควบคุมคำสั่งที่อาจอยู่ในไฟล์ .htaccess # อาจเป็น "ทั้งหมด", "ไม่มี" หรือคำสำคัญผสมกัน: # ตัวเลือก FileInfo AuthConfig Limit # AllowOverride ไม่มี

    # AllowOverride ควบคุมคำสั่งที่อาจอยู่ในไฟล์ .htaccess # อาจเป็น "ทั้งหมด", "ไม่มี" หรือคำหลักผสมกัน: # AllowOverride FileInfo AuthConfig Limit # AllowOverride All

    #LoadModule rewrite_module modules/mod_rewrite.so

    LoadModule โมดูล rewrite_module/mod_rewrite.so

    บันทึกและปิดไฟล์ ทั้งหมด, การตั้งค่าอาปาเช่สมบูรณ์! รีสตาร์ทเว็บเซิร์ฟเวอร์ของคุณหรือรีบูตคอมพิวเตอร์เพื่อให้การเปลี่ยนแปลงมีผล

    วางเว็บไซต์ของคุณไว้ในโฟลเดอร์ C:\เซิร์ฟเวอร์\ข้อมูล\htdocs\.

    วิธีการติดตั้ง PHP บน Windows XP

    บน Windows XP ที่ใช้ Apache เวอร์ชันนี้ มีเพียง PHP 5.4 เท่านั้นที่จะใช้งานได้ เวอร์ชันล่าสุดคือ PHP 5.4.9 เป็นไฟล์นี้ที่เราดาวน์โหลดจากไฟล์เก็บถาวร

    ดาวน์โหลดและติดตั้งไฟล์ "Microsoft Visual C++ 2008 (x86) Redistributable Package" สำหรับ PHP เวอร์ชันนี้

    ในโฟลเดอร์ C:\เซิร์ฟเวอร์\ถัง\สร้างโฟลเดอร์อื่นชื่อ PHPให้แตกเนื้อหาของไฟล์ที่ดาวน์โหลดมาลงไป php-5.4.9-Win32-VC9-x86.zip.

    ในไฟล์ C:\เซิร์ฟเวอร์\bin\Apache2.2\conf\httpd.confเพิ่มบรรทัดที่ส่วนท้ายสุด

    PHPIniDir "C:/Server/bin/PHP" แอปพลิเคชัน AddHandler/x-httpd-php .php LoadModule php5_module "C:/Server/bin/PHP/php5apache2_2.dll"

    ตอนนี้อยู่ในโฟลเดอร์ C:\เซิร์ฟเวอร์\bin\PHP\ค้นหาไฟล์ php.ini-การพัฒนาและเปลี่ยนชื่อเป็น php.ini.

    เปิดไฟล์นี้ php.iniในโปรแกรมแก้ไขข้อความใดๆ ให้มองหาบรรทัด

    - extension_dir = "ต่อ"

    และแทนที่ด้วย

    Extension_dir = "C:\เซิร์ฟเวอร์\bin\PHP\ext\"

    ตอนนี้ค้นหากลุ่มของบรรทัด:

    ;ส่วนขยาย=php_bz2.dll ;ส่วนขยาย=php_curl.dll ;ส่วนขยาย=php_fileinfo.dll ;ส่วนขยาย=php_gd2.dll ;ส่วนขยาย=php_gettext.dll ;ส่วนขยาย=php_gmp.dll ;ส่วนขยาย=php_intl.dll ;ส่วนขยาย=php_imap.dll ;ส่วนขยาย =php_interbase.dll ;ส่วนขยาย=php_ldap.dll ;ส่วนขยาย=php_mbstring.dll ;ส่วนขยาย=php_exif.dll ; ต้องอยู่หลัง mbstring เนื่องจากขึ้นอยู่กับมัน ;extension=php_mysql.dll ;extension=php_mysqli.dll ;extension=php_oci8.dll ; ใช้กับ Oracle 10gR2 Instant Client ;extension=php_oci8_11g.dll ; ใช้กับ Oracle 11gR2 Instant Client ;extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo _sqlite.dll ; ส่วนขยาย =php_pgsql.dll ;ส่วนขยาย=php_pspell.dll ;ส่วนขยาย=php_shmop.dll

    และแทนที่ด้วย:

    ส่วนขยาย=php_bz2.dll ส่วนขยาย=php_curl.dll ส่วนขยาย=php_fileinfo.dll ส่วนขยาย=php_gd2.dll ส่วนขยาย=php_gettext.dll ;ส่วนขยาย=php_gmp.dll ;ส่วนขยาย=php_intl.dll ;ส่วนขยาย=php_imap.dll ;ส่วนขยาย=php_interbase.dll ; ส่วนขยาย=php_ldap.dll ส่วนขยาย=php_mbstring.dll ส่วนขยาย=php_exif.dll ; ต้องอยู่หลัง mbstring เนื่องจากขึ้นอยู่กับมัน extension=php_mysql.dll extension=php_mysqli.dll ;extension=php_oci8.dll ; ใช้กับ Oracle 10gR2 Instant Client ;extension=php_oci8_11g.dll ; ใช้กับ Oracle 11gR2 Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll ; extension=php_pgsql dll ;ส่วนขยาย=php_pspell.dll ;ส่วนขยาย=php_shmop.dll

    ตอนนี้ยกเลิกการแสดงความคิดเห็นบรรทัดจากกลุ่มนี้:

    ;ส่วนขยาย=php_soap.dll ;ส่วนขยาย=php_sockets.dll ;ส่วนขยาย=php_sqlite3.dll ;ส่วนขยาย=php_sybase_ct.dll ;ส่วนขยาย=php_tidy.dll ;ส่วนขยาย=php_xmlrpc.dll ;ส่วนขยาย=php_xsl.dll ;ส่วนขยาย=php_zip.dll

    มันควรมีลักษณะเช่นนี้:

    ส่วนขยาย=php_soap.dll ส่วนขยาย=php_sockets.dll ส่วนขยาย=php_sqlite3.dll ;extension=php_sybase_ct.dll ;extension=php_tidy.dll ส่วนขยาย=php_xmlrpc.dll ส่วนขยาย=php_xsl.dll ;extension=php_zip.dll

    รีสตาร์ทเว็บเซิร์ฟเวอร์:

    ในแค็ตตาล็อก C:\เซิร์ฟเวอร์\ข้อมูล\htdocs\สร้างไฟล์ด้วยชื่อ i.php

    คัดลอกไปที่ไฟล์นี้:

    แตกไฟล์ที่ดาวน์โหลดมาลงไป C:\เซิร์ฟเวอร์\ข้อมูล\htdocs\- เปลี่ยนชื่อโฟลเดอร์นี้ (phpMyAdmin-3.5.8.2-ทุกภาษา) เป็น phpmyadmin.php.

    ในแค็ตตาล็อก c:\เซิร์ฟเวอร์\ข้อมูล\htdocs\phpmyadmin\สร้างไฟล์ config.inc.phpและคัดลอกไปที่นั่น:

    ในเว็บเบราว์เซอร์ของคุณ ให้เปิดที่อยู่ http://localhost/phpmyadmin/ :

    สำหรับ Username ให้กรอก รากและปล่อยให้รหัสผ่านว่างไว้

    บทสรุป

    อย่างที่คุณเห็นแม้ว่าเราจะเลือกเวอร์ชันที่เหมาะสม แต่คุณสามารถเรียกใช้เว็บเซิร์ฟเวอร์ที่มีคุณสมบัติครบถ้วนบน Windows XP ได้แม้ว่าจะไม่ได้ใช้ส่วนประกอบของโปรแกรมล่าสุดก็ตาม

    อย่างไรก็ตามคุณสามารถดาวน์โหลดชุดประกอบสำเร็จรูปที่สร้างขึ้นตามคำแนะนำเหล่านี้ได้ คุณจะพบมัน

    บทความนี้มีให้ คำแนะนำทีละขั้นตอนในการติดตั้ง PHP เพื่อทำงานร่วมกับเซิร์ฟเวอร์ Apache HTTP บน Windows ขั้นตอนนี้ได้รับการทดสอบทั้งบน Windows XP และ Vista ถือว่าคุณได้ติดตั้ง Apache เรียบร้อยแล้ว

    ขั้นตอนการตั้งค่า PHP 5

    1. ดาวน์โหลด PHP5

    ก่อนที่คุณจะเริ่มต้น ให้ดาวน์โหลดสำเนา PHP 5 จาก หน้าดาวน์โหลด- ดาวน์โหลดแพ็คเกจ VC6 ที่ปลอดภัยจากส่วน "Windows Binaries" นั่นคืออย่าดาวน์โหลดตัวติดตั้ง เช่น เลือกแพ็คเกจที่มีเครื่องหมาย " แพ็คเกจซิป PHP 5.2.5“หากในขณะนั้น รุ่นปัจจุบัน — 5.2.5 .

    หมายเหตุ: โปรดทราบว่าฉันยังไม่ได้ทดสอบขั้นตอนด้านล่างกับเวอร์ชัน PHP 5.3 เฉพาะกับเวอร์ชัน 5.2.5 ซึ่งเป็นเวอร์ชันล่าสุดในขณะที่เขียนบทความนี้ ตามทฤษฎีแล้ว ควรทำตามขั้นตอนเดียวกันเพื่อติดตั้ง PHP 7

    2. ติดตั้ง PHP 5

    สร้างโฟลเดอร์บนฮาร์ดไดรฟ์ของคุณสำหรับ PHP ฉันแนะนำ c:php แม้ว่าคุณสามารถใช้ชื่อโฟลเดอร์และตำแหน่งอื่นได้ โดยส่วนตัวแล้วฉันไม่ชอบใช้ชื่อที่มีการเว้นวรรค

    แยกไฟล์ทั้งหมดจากไฟล์เก็บถาวรที่ดาวน์โหลดมาลงในโฟลเดอร์นี้ ในการดำเนินการนี้ เพียงดับเบิลคลิกที่ไฟล์ zip จากนั้นลากไฟล์ทั้งหมดไปไว้ในโฟลเดอร์ c:php

    3. สำหรับผู้ที่อัพเกรดแพ็คเกจ: ลบไฟล์ PHP.INI เก่าออกจากไดเร็กทอรี Windows

    หากคุณกำลังอัปเกรดเป็น PHP 5 จากด้านบน รุ่นเก่าไปที่ไดเร็กทอรี Windows ( ปกติจะเป็น c:windows) และลบไฟล์ php.ini ใด ๆ ที่คุณวางไว้ที่นั่นก่อนหน้านี้

    4. การตั้งค่า PHP

    ไปที่โฟลเดอร์ c:php และสร้างสำเนาของไฟล์แนะนำ php.ini ชื่อ ไฟล์ใหม่ php.ini . ตอนนี้คุณควรมีไฟล์ c:phpphp.in ที่มีเนื้อหาเหมือนกับไฟล์ c:phpphp.ini-recommended

    บันทึก: หากคุณใช้ Apache 1 คุณจะต้องย้ายไฟล์ php.ini ไปยังไดเร็กทอรี Windows ( ค:หน้าต่าง) หรือตั้งค่าตัวแปรสภาพแวดล้อม PATH ของคุณให้รวม c:php หากคุณไม่ทราบวิธีดำเนินการ เพียงย้ายไฟล์ php.ini ไปที่โฟลเดอร์ c:windows คุณไม่จำเป็นต้องทำเช่นนี้หากคุณใช้ Apache 2 เนื่องจากเราจะระบุคำสั่งในไฟล์การกำหนดค่า Apache 2 ด้วยตำแหน่งของไฟล์ php.ini ในภายหลัง

    ในการติดตั้ง PHP บน Windows 7 โดยใช้ โปรแกรมแก้ไขข้อความ (เช่น Notepad ซึ่งสามารถพบได้ในส่วน System ของเมนู Start- เปิดไฟล์ php.ini คุณอาจจำเป็นต้องทำการเปลี่ยนแปลงต่อไปนี้กับไฟล์:

    ก) รวมถึงแท็กเปิดแบบสั้น

    ค้นหาบรรทัดต่อไปนี้:

    short_open_tag = ปิด

    หากตั้งค่า short_open_tag เป็นปิด แท็กเช่น "

    เนื่องจากสคริปต์ PHP ของบุคคลที่สามจำนวนมากใช้ "

    short_open_tag = เปิด

    b) คำพูดวิเศษ

    เมื่อติดตั้ง Apache PHP ตามค่าเริ่มต้น ข้อมูลขาเข้าจะไม่ถูกสแลช Escape โดยอัตโนมัติ หากคุณต้องการให้อินพุตขึ้นต้นด้วยแบ็กสแลช ("") เช่น เพื่อสร้างการตั้งค่าโฮสติ้งใหม่ ให้ค้นหาบรรทัดต่อไปนี้:

    magic_quotes_gpc = ปิด

    และแทนที่ด้วย:

    magic_quotes_gpc = เปิด

    ไม่แนะนำให้ทำเช่นนี้หากไม่ได้ตั้งค่าพารามิเตอร์นี้บนโฮสติ้ง แม้จะตั้งค่าเป็นปิด คุณก็ยังสามารถใช้งานได้ ฟังก์ชั่น PHP addslashes()เพื่อเพิ่มเครื่องหมายทับสำหรับข้อมูลเฉพาะ

    c) การใช้ตัวแปรโกลบอล

    เมื่อดำเนินการสคริปต์เก่าจำนวนหนึ่ง ถือว่าข้อมูลทั้งหมดที่ส่งผ่านแบบฟอร์มจะมีตัวแปร PHP ที่มีชื่อเดียวกันโดยอัตโนมัติ ตัวอย่างเช่น หากแบบฟอร์มมีช่องป้อนข้อมูลชื่อ "something" สคริปต์ PHP รุ่นเก่าจะถือว่าตัวประมวลผล PHP จะสร้างตัวแปรชื่อ $something โดยอัตโนมัติ ซึ่งมีค่าที่ระบุผ่านช่องนั้น

    หากคุณใช้สคริปต์ดังกล่าว คุณจะต้องค้นหาบรรทัดต่อไปนี้:

    register_globals = ปิด

    และเปลี่ยนเป็น:

    register_globals = เปิด

    คำเตือน: เมื่อติดตั้ง PHP บน Windows อย่าทำเช่นนี้ เว้นแต่คุณจะมีสคริปต์ของบุคคลที่สามที่ต้องใช้สิ่งนี้ในการทำงาน เมื่อเขียนสคริปต์ใหม่ เป็นการดีที่สุดที่จะถือว่าองค์ประกอบ register_globals ถูกตั้งค่าเป็น " ปิด«.

    ง) การแสดงข้อผิดพลาด

    บนไซต์ที่ใช้งานจริง ข้อผิดพลาดในสคริปต์มักจะถูกบันทึกโดยไม่ปรากฏในไฟล์ข้อผิดพลาด PHP แต่บนเครื่องท้องถิ่น ขณะที่คุณกำลังทดสอบและแก้ไขสคริปต์ PHP จะสะดวกกว่าในการส่งข้อความแสดงข้อผิดพลาดเมื่อตรวจพบข้อความดังกล่าวโดยตรงไปยังหน้าต่างเบราว์เซอร์ ด้วยวิธีนี้คุณจะไม่พลาดข้อผิดพลาดแม้ว่าคุณจะลืมตรวจสอบไฟล์บันทึกข้อผิดพลาดก็ตาม

    หากต้องการให้ PHP แสดงข้อความแสดงข้อผิดพลาดโดยตรงในหน้าต่างเบราว์เซอร์ ให้มองหาบรรทัดต่อไปนี้:

    display_errors = ปิด

    และเปลี่ยนเป็น:

    display_errors = เปิด

    การตั้งค่านี้ควรตั้งค่าเป็นปิดบนไซต์ที่ทำงานอยู่เสมอ

    จ) เส้นทางเซสชัน

    หากสคริปต์ใช้เซสชัน ให้ค้นหาบรรทัดต่อไปนี้:

    ;session.save_path = "/tmp"

    session.save_path ระบุโฟลเดอร์ที่ PHP บันทึกไฟล์เซสชัน เนื่องจากโฟลเดอร์ /tmp ไม่มีอยู่ใน Windows คุณจึงต้องติดตั้งโฟลเดอร์อื่น วิธีหนึ่งคือสร้างโฟลเดอร์ชื่อ c:tmp ( เหมือนก่อนหน้านี้เราสร้าง c:php) และระบุโฟลเดอร์นี้สำหรับพารามิเตอร์นี้ หากคุณทำเช่นนี้ ให้เปลี่ยนบรรทัดนี้ดังนี้:

    session.save_path = "c:tmp"

    โปรดทราบว่านอกเหนือจากการเปลี่ยนเส้นทางแล้ว ฉันยังลบคำนำหน้าอัฒภาค (";") ออกจากสตริงด้วย

    คุณยังสามารถใช้โฟลเดอร์ TEMP ปัจจุบันบนคอมพิวเตอร์ของคุณได้ หรือสร้างโฟลเดอร์ tmp ในไดเร็กทอรี PHP ของคุณ เช่น c:phptmp และกำหนดค่าไฟล์กำหนดค่าตามลำดับ อาจมีตัวเลือกที่เป็นไปได้มากมาย หากคุณตัดสินใจไม่ได้ว่าจะเลือกอันไหน ให้สร้าง c:php แล้วทำตามที่ผมบอกไว้ข้างต้น

    ฉ) เซิร์ฟเวอร์ SMTP

    หากคุณติดตั้ง PHP 55 หากสคริปต์ของคุณใช้ฟังก์ชัน mail() และคุณต้องการให้ฟังก์ชันส่งเมลบนเครื่องของคุณสำเร็จ ให้มองหาส่วนต่อไปนี้:

    - สำหรับ Win32 เท่านั้น SMTP = โลคัลโฮสต์ smtp_port = 25 ; สำหรับ Win32 เท่านั้น ;sendmail_from= [ป้องกันอีเมล]

    เปลี่ยนให้รวมที่อยู่เซิร์ฟเวอร์ SMTP และบัญชีอีเมลของคุณ ตัวอย่างเช่นหากคุณ เซิร์ฟเวอร์ SMTP mail.example.comและที่อยู่อีเมล [ป้องกันอีเมล]ให้เปลี่ยนโค้ดดังนี้:

    SMTP = mail.example.com smtp_port = 25 sendmail_from = [ป้องกันอีเมล]

    โปรดทราบว่าหลังจากนี้ เมื่อสคริปต์พยายามใช้ฟังก์ชัน mail() สคริปต์จะต้องเชื่อมต่อกับ ISP ของคุณเพื่อให้สคริปต์ทำงานได้สำเร็จ หากคุณไม่เปลี่ยนบรรทัดด้านบนและลองใช้ฟังก์ชัน mail() ในสคริปต์ ฟังก์ชันจะส่งคืนรหัสความล้มเหลวและแสดงข้อความแสดงข้อผิดพลาด

    วิธีกำหนดค่า Apache สำหรับ PHP 5

    มีสองวิธีในการติดตั้ง Apache PHP ขั้นแรก: ตั้งค่าให้ดาวน์โหลด ล่าม PHPเป็นโมดูล Apache ประการที่สอง: กำหนดค่าให้เรียกใช้ล่ามเป็นไบนารี CGI จำเป็นต้องใช้เพียงหนึ่งในนั้น เลือกวิธีการของโมดูลหากมีการติดตั้ง PHP บนโฮสติ้งด้วย เช่น โมดูล Apache หรือใช้วิธี CGI หากมีการใช้งานบนโฮสติ้ง

    ก) ใช้งาน PHP 5 เป็นโมดูล Apache

    หากต้องการกำหนดค่า Apache ให้โหลด PHP เป็นโมดูลสำหรับแยกวิเคราะห์สคริปต์ PHP ให้ใช้โปรแกรมแก้ไขข้อความ ASCII เพื่อเปิดไฟล์การกำหนดค่า Apache httpd.conf

    หากคุณใช้ Apache 1.x ไฟล์จะอยู่ในโฟลเดอร์ c:ไฟล์โปรแกรมApache GroupApacheconf- ผู้ใช้ Apache 2.0.x สามารถค้นหาได้ในโฟลเดอร์ C:ไฟล์โปรแกรมApache GroupApache2confและผู้ใช้ Apache 2.2.x อยู่ในโฟลเดอร์ C: ไฟล์โปรแกรมมูลนิธิซอฟต์แวร์ ApacheApache2.2conf- โดยทั่วไปจะอยู่ในโฟลเดอร์ conf ของไดเร็กทอรีที่ติดตั้ง Apache

    ค้นหาส่วนของไฟล์ด้วยคำสั่ง LoadModule การประกาศที่นำหน้าด้วยสัญลักษณ์แฮช "#" จะถือเป็นการใส่ความคิดเห็น

    หากคุณใช้ Apache 1.x ให้เพิ่มบรรทัดต่อไปนี้หลังคำสั่ง LoadModule ทั้งหมด:

    LoadModule php5_module "c:/php/php5apache.dll"

    หากคุณใช้ Apache 2.0.x ให้เพิ่มบรรทัดต่อไปนี้หลังคำสั่ง LoadModule ทั้งหมด:

    LoadModule php5_module "c:/php/php5apache2.dll"

    หากคุณใช้ Apache 2.2.x ให้เพิ่มบรรทัดต่อไปนี้:

    โหลดโมดูล php5_module "c:/php/php5apache2_2.dll"

    โปรดทราบว่าตัวอย่างการติดตั้ง PHP นี้ใช้อักขระสแลชไปข้างหน้า (“/”) แทนแบ็กสแลชแบบดั้งเดิมของ Windows (“”) นี่ไม่ใช่การพิมพ์ผิด

    หากคุณใช้ Apache 1.x ให้ค้นหาชุดคำสั่ง "AddModule" และเพิ่มคำสั่งต่อไปนี้หลังทุกบรรทัด

    เพิ่มโมดูล mod_php5.c

    จากนั้นค้นหาบล็อก AddType ในไฟล์และเพิ่มบรรทัดต่อไปนี้หลังคำสั่ง AddType สุดท้าย สิ่งนี้จำเป็นต้องทำไม่ว่าคุณจะใช้ Apache เวอร์ชันใดก็ตาม สำหรับ Apache 2.2.x คุณต้องค้นหาบรรทัด AddType ในส่วนนี้ - เพิ่มบรรทัดก่อนที่จะปิดสำหรับส่วนนี้

    หากคุณต้องการการสนับสนุนสำหรับไฟล์ประเภทอื่นๆ เช่น ".phtml" ให้เพิ่มลงในรายการ เช่น:

    สำหรับผู้ที่ใช้ Apache 2 เวอร์ชันใดเวอร์ชันหนึ่ง คุณจะต้องระบุตำแหน่งของไฟล์ PHP ini เพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของ httpd.conf

    PHPIniDir "c:/php"

    หากคุณใช้ไดเร็กทอรีอื่น คุณจะต้องเปลี่ยน c:/php เป็นพาธที่ถูกต้อง อย่าลืมใช้เครื่องหมายทับ ("/")

    หากคุณใช้ Apache 1 แสดงว่าคุณได้วางไฟล์ php.ini ไว้ในโฟลเดอร์ Windows หรือที่ไหนสักแห่งใน PATH ของคุณแล้ว ดังนั้น PHP จะต้องค้นหามันด้วยตัวเอง

    ใช้ PHP 5 เป็นไบนารี CGI

    หากคุณได้กำหนดค่า PHP 5 ให้โหลดเป็นโมดูล Apache คุณสามารถข้ามส่วนนี้ได้ มีไว้สำหรับผู้ที่ต้องการกำหนดค่า PHP ให้ทำงานเป็นไบนารี CGI

    ขั้นตอนในการดำเนินการนี้เมื่อติดตั้ง PHP 7 จะเหมือนกันสำหรับทั้ง Apache 1.x และซีรีส์ 2.x ทุกเวอร์ชัน

    ค้นหาส่วนของไฟล์กำหนดค่า Apache ที่มีส่วน ScriptAlias เพิ่มบรรทัดด้านล่างทันทีหลังบรรทัด ScriptAlias ​​สำหรับ " cgi-bin- หากคุณใช้ Apache 2.2.x ตรวจสอบให้แน่ใจว่าบรรทัดอยู่ก่อนปิดสำหรับส่วน .

    โปรดทราบ: หากคุณติดตั้ง PHP ในตำแหน่งอื่น เช่น c:Program Filesphp คุณจะต้องระบุเส้นทางที่เหมาะสมแทน c:/php/ (เช่น c:Program Filesphp)- อย่าลืมว่าที่นี่เราใช้เครื่องหมายทับ ("/") แทนเครื่องหมายแบ็กสแลชของ Windows ("")

    ScriptAlias ​​​​/php/ "c:/php/"

    Apache จำเป็นต้องกำหนดค่าประเภท PHP MIME ค้นหาบล็อกความคิดเห็น AddType ที่อธิบายการใช้งานและเพิ่มบรรทัดต่อไปนี้ด้านล่าง สำหรับ Apache 2.2.x ให้ค้นหาบรรทัด AddType ด้านล่าง - เพิ่มบรรทัดด้านล่างก่อนปิดสำหรับส่วนนี้

    แอปพลิเคชัน AddType/x-httpd-php .php

    เช่นเดียวกับการติดตั้ง PHP เป็นโมดูล Apache คุณสามารถเพิ่มส่วนขยายใดๆ เพื่อให้ Apache จดจำส่วนขยายเหล่านี้เป็นสคริปต์ PHP ได้ ตัวอย่างเช่น:

    แอปพลิเคชัน AddType/x-httpd-php .phtml

    จากนั้นคุณจะต้องบอกให้เซิร์ฟเวอร์ดำเนินการปฏิบัติการ PHP ทุกครั้งที่พบสคริปต์ PHP เพิ่มโค้ดต่อไปนี้ลงในไฟล์ เช่น หลังบล็อกความคิดเห็นที่อธิบาย " การกระทำ«.

    หากคุณใช้ Apache 2.2.x ให้เพิ่มโค้ดทันทีหลังคำสั่ง AddType ที่อธิบายไว้ข้างต้น Apache 2.2.x ไม่มีบล็อกความคิดเห็น " การกระทำ«.

    แอปพลิเคชันการดำเนินการ/x-httpd-php "/php/php-cgi.exe"

    หมายเหตุ: ส่วน "/php/" จะได้รับการยอมรับว่าเป็น ScriptAlias ​​ซึ่งเป็นมาโครประเภทหนึ่งที่ Apache จะขยายเป็น "c:/php/" ( หรือ "c:/Program Files/php/" หากคุณติดตั้ง PHP ที่นั่น- กล่าวอีกนัยหนึ่ง อย่าใส่เส้นทาง "c:/php/php.exe" หรือ "c:/ไฟล์โปรแกรม/php/php.exe"แต่ให้ใช้ “/php/php-cgi.exe”

    หากคุณใช้ Apache 2.2.x ให้ค้นหาส่วนต่อไปนี้ในไฟล์ httpd.conf ของคุณ:

    เพิ่มบรรทัดด้านล่างหลังจากส่วนที่คุณเพิ่งพบ

    AllowOverride ไม่มี ตัวเลือก ไม่มี ลำดับ อนุญาต ปฏิเสธ อนุญาตจากทั้งหมด

    c) การตั้งค่าหน้าดัชนีเริ่มต้น

    ส่วนนี้ใช้กับตัวเลือกในการติดตั้ง PHP บน Windows เป็นทั้งโมดูล Apache และไบนารี CGI

    หากคุณสร้างไฟล์ index.php และต้องการให้ Apache โหลดเป็นหน้าแรกของเว็บไซต์ คุณจะต้องเพิ่มบรรทัดอื่นในไฟล์ httpd.conf ค้นหาบรรทัดที่ขึ้นต้นด้วย " ดัชนีไดเรกทอรี" และเพิ่ม " ดัชนี.php" ไปยังรายการไฟล์ ตัวอย่างเช่น หากคุณมีโค้ดดังนี้:

    DirectoryIndexดัชนี.html

    เรายังคงสร้างเซิร์ฟเวอร์ WAMP ภายในเครื่องบนเครื่องท้องถิ่น (คอมพิวเตอร์ส่วนบุคคล) ต่อไป ในบทความนี้ เราจะติดตั้งล่าม PHP หรือที่เรียกว่า [P] ในตัวย่อ WAMP

    ฉันขอเตือนคุณว่าแอสเซมบลี Apache+MySQL+PHP จำเป็นต่อการสร้างเว็บไซต์บนคอมพิวเตอร์ของคุณเป็นเซิร์ฟเวอร์ภายในเครื่อง งานนี้น่าสนใจสำหรับหลาย ๆ คนและมักใช้สำหรับทำงานในโครงการ การประกอบ AMP ด้วยตนเองเป็นงานที่ซับซ้อนซึ่งเกี่ยวข้องกับการตั้งค่าคอมพิวเตอร์ และตรวจสอบให้แน่ใจว่าคอมพิวเตอร์อยู่ในสภาพที่ใช้งานได้ดีอยู่เสมอ สำหรับหลายๆ คน สิ่งนี้ง่ายกว่าการทำงานกับเซิร์ฟเวอร์ระยะไกล เนื่องจากความช่วยเหลือด้านคอมพิวเตอร์อยู่ใกล้แค่เอื้อม นอกจากนี้ การทำงานกับเซิร์ฟเวอร์ภายในเครื่องนั้นฟรี

    ในบทความก่อนหน้านี้ฉันได้พูดคุยเกี่ยวกับวิธีการอย่างไร เรากำลังสร้างเซิร์ฟเวอร์ท้องถิ่นที่ใช้ Windows 7 ถึงเวลาติดตั้ง PHP แล้ว

    เราจะติดตั้ง PHP ในโฟลเดอร์ php ที่สร้างขึ้นบนไดรฟ์ระบบ: C:\Program Files\PHP

    จะรับ PHP ได้ที่ไหน

    เราดาวน์โหลด php เวอร์ชันล่าสุดจากเว็บไซต์อย่างเป็นทางการเท่านั้น นี่คือลิงค์: https://php.net/downloads.php- อีกอัน: https://windows.php.net/download#php-7.0 เราจะไม่ใช้ php7.0 เวอร์ชันล่าสุด เราจะใช้ PHP 5.6 (5.6.20) ที่ไม่ "ปฏิวัติวงการ" ฉันใช้แอสเซมบลีสำหรับสถาปัตยกรรม 32 บิตของ Windows 7 พร้อมตัวติดตั้ง Windows ในตัว

    การติดตั้ง PHP ด้วยตัวติดตั้ง (MSI)

    PHP ล่าสุดพร้อมตัวติดตั้งและที่สำคัญที่สุดคือโมดูล Apache 2.2 นี่คือ php-5.3.10-nts-Win32-VC9-x86.msi เอาล่ะที่นี่: https://windows.php.net/downloads/releases/archives/ เราจะวางมันไว้ตรงนั้น.

    บันทึก:เราเลือกใช้โมดูล Apache 2.2 เนื่องจากเรากำลังสร้าง WAMP บน Apache 2.2 ซึ่งเราได้ติดตั้งไว้แล้ว

    การติดตั้ง PHP โดยใช้โปรแกรมติดตั้ง (MSI) นั้นง่ายดายในหลายหน้าต่าง:

    1. เรียกใช้ไฟล์ที่ดาวน์โหลดมา php-5.3.10-nts-Win32-VC9-x86.msi

    หน้าต่างการติดตั้ง php-5.3.10 แรก

    2. เราทำความคุ้นเคยกับใบอนุญาตและเมื่อตกลงแล้วให้ดำเนินการต่อโดยคลิกปุ่ม "ถัดไป"

    3. ในหน้านี้ เราระบุโฟลเดอร์ที่เราติดตั้ง PHP ให้นี่เป็นไดเร็กทอรี:

    4. ในหน้าถัดไป เลือกเว็บเซิร์ฟเวอร์ที่จะใช้ ในงานสร้างของเรานี่คือ Apache2

    5. ในหน้านี้ คุณต้องเลือกโมดูล PHP ที่เราต้องการ เพื่อความปลอดภัยเราเลือกทุกอย่าง

    6. คลิก “ติดตั้ง”


    คลิกติดตั้งเพื่อติดตั้ง php-5.3.10
    เราเห็นขั้นตอนการติดตั้งหน้าต่าง php-5.3.10

    ทั้งหมด! การติดตั้ง PHP บนเครื่องคอมพิวเตอร์ของคุณเสร็จสมบูรณ์