อัปเดต: เกิดข้อผิดพลาดต่อไปนี้ในบันทึกข้อผิดพลาดของ Apache...
[Sat Dec 08 16:41:39 2012] [error] [client 127.0.0.1]
PHP Fatal error: require_once():
Failed opening required 'Zend/Application.php'
(include_path='/Library/WebServer/Documents/quickstart/library:.:/php/includes:/Users/markmcdonnell/Dropbox/Library/PHP/ZendFramework-1.12.0/library')
in /Library/WebServer/Documents/quickstart/public/index.php on line 18
ฉันใช้ Mac OSX 10.8.2 (Mountain Lion) และฉันประสบปัญหาในการตั้งค่าและใช้งานเฟรมเวิร์ก Zend (เพียง QuickStart พื้นฐานเท่านั้น)
ฉันใช้อาปาเช่ 2.2.22
ไฟล์ localhost ของฉันสามารถเข้าถึงได้จาก /Library/WebServer/Documents
ฉันมี PHP 5.3.15 ทำงานเช่นกัน
ฉันได้สร้างโครงการใหม่ผ่านทางบรรทัดคำสั่ง (โดยใช้ไฟล์ zf.sh) ชื่อ 'quickstart' (ตามส่วนบนเว็บไซต์ Zend แนะนำ) และที่เก็บไว้ที่นี่: /Library/WebServer/Documents/quickstart
ฉันได้ปฏิบัติตามคำแนะนำอย่างเป็นทางการของเว็บไซต์ Zend และหนังสือออนไลน์เกี่ยวกับการติดตั้ง Zend แล้ว: http://www.survivethedeepend.com/zendframeworkbook/en/1.0/creating.a.local.domain.usingapache.virtual.hosts
ไฟล์ php.ini (/private/etc/php.ini
) ของฉันได้รับการอัปเดตเพื่อรวมเส้นทางไปยังโฟลเดอร์ library
ภายในไดเร็กทอรี ZendFramework...
include_path = ".:/php/includes:/Users/<home>/Dropbox/Library/PHP/ZendFramework-1.12.0/library"
ฉันได้อัปเดต /etc/apache2/httpd.conf
ดังนั้นจึงรวม...
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
# Ensure "localhost" is preserved unchanged pointed
# to the default document root for our system.
<VirtualHost *:80>
ServerName localhost
DocumentRoot /Library/WebServer/Documents
</VirtualHost>
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerName quickstart.local
DocumentRoot /Library/WebServer/Documents/quickstart/public
SetEnv APPLICATION_ENV "development"
<Directory /Library/WebServer/Documents/quickstart/public>
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
...ฉันได้อัปเดต /etc/hosts
ด้วย ดังนั้นมันจึงรวม...
127.0.0.1 localhost
127.0.0.1 quickstart.local
ฉันกำลังรีสตาร์ท Apache โดยใช้ sudo apachectl graceful
(ฉันก็ใช้ sudo apachectl restart
เช่นกัน)
ดังนั้นหากฉันลองเข้าถึง http://localhost/
แล้ว ฉันจะเห็นไดเร็กทอรี /Library/WebServer/Documents
ของฉัน และฉันเห็นว่า PHP ยังคงทำงานอยู่โดยไม่มีปัญหา แต่ถ้าฉันพยายามเข้าถึง http://quickstart.local/
ฉันเพิ่งได้รับหน้าว่าง?
ใครช่วยแนะนำหน่อยได้ไหมว่าปัญหาคืออะไร สิ่งที่ฉันขาดหายไป และสิ่งที่ฉันสามารถทำได้เพื่อให้หน้า 'ยินดีต้อนรับ' เริ่มต้นแสดง
ฉันแน่ใจว่าฉันแค่คิดถึงคนเล็กๆ น้อยๆ แต่เห็นได้ชัดว่ามันทำให้เกิดปัญหามากพอที่หน้าพื้นฐานจะไม่แสดง
ขอบคุณ.
เครื่องหมาย
include_path
ในphp.ini
ของคุณให้ชี้ไปที่โฟลเดอร์ที่มีZendFramework
อยู่ - person Kamil Šrot   schedule 08.12.2012