httpd.conf المضيف الافتراضي لا يعمل
سؤال
لقد أضفت هذا:
<VirtualHost *:8888>
ServerName dietron
DocumentRoot /Users/kieransenior/Development/reformsoft_dietron/trunk/var/www/dietron/htdocs
<Directory /Users/kieransenior/Development/reformsoft_dietron/trunk/var/www/dietron/htdocs>
AllowOverride All
Options All
</Directory>
php_value include_path .:/Users/kieransenior/Development/reformsoft_dietron/trunk/var/www/dietron/include:/usr/local/lib/pear
php_value magic_quotes_gpc off
php_value register_globals off
</VirtualHost>
إلى Httpd.conf على أمل أن يتم التقاط ملف .htaccess الخاص بي في مجلد HTDocs بالقواعد التالية:
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
هذه هي المحتويات بأكملها. أنا إعادة تسمية .htaccess على بلدي MBP من خلال القيام mv i.htaccess .htaccess
التي أفترض صحيحة؟ أنا أستخدم mamm لذلك يحتوي httpd.conf على تحميل الإعدادات الافتراضية وأضفت أول مقتطف أعلاه في نهاية ذلك. ثم أعد تشغيلها عن طريق إيقاف Apache وبدء تشغيلها مرة أخرى. يتم التقاط الفهرس.php غرامة، ولكن عندما أفعل http://localhost:8888/anythinghere
يأتي مع 404، والتي لا ينبغي أن يحدث.
أي أفكار حول ما أفعله خطأ؟
تعديل: إليك httpd.conf
تعديل: ها هو الخطأ في سجل Apache:
[Fri Jun 05 16:02:22 2009] [error] [client ::1] File does not exist: /Users/kieransenior/Development/reformsoft_dietron/trunk/var/www/dietron/htdocs/testing
المحلول
بضع اقتراحات.
أولا، على الخط 461 من httpd.conf:
AccessFileName afn.htaccess
لا ينبغي أن يكون. htaccess؟
الشيء الثاني الذي أراه هو أن اسم الخادم يتم تعيين:
ServerName dietron
لكنك تحاول الوصول إليها مع LocalHost
أقترح عليك وضع إدخال في ملف / ETC / Hosts الخاص بك بحيث يحل Dietron، إما إلى عنوان IP المحلي أو الاسترجاع الخاص بك (127.0.0.1)، ثم الوصول إلى الخادم http: // dietron: 8888
نصائح أخرى
تأكد من ضبط توجيه المسموح به بشكل صحيح على المستوى العالمي. إذا لم يسمح أي تجاوز (AllowOverride None
) في Webroot الخاص بك، سيتم تجاهل ملف HTACCESS الخاص بك.