Опитвам се да накарам пренаписването на мода да работи на моя Mac. Това е съдържанието на файла .htaccess:

 order allow,deny deny from all  RewriteEngine on RewriteRule .* index.php 

Знам, че това е активно, защото блокира правилно .ini файловете и изглежда пренаписва измислената заявка /foo да се index.php, тъй като това е грешката, която виждам в браузъра:

Заявеният URL /Users/rwel/Sites/dev/quaestio/index.php не е намерен на този сървър.

Понастоящем файлът index.php просто съдържа изходен оператор за целите на тестването и работи при директно извикване. И така, въпросът е, какво се случва? Влязох в дневника за грешки на apache и ето какво видях:

[Thu Nov 03 14:36:02 2011] [грешка] [клиент 127.0.0.1] Файл не съществува: / Library / WebServer / Documents / Users

Така че проблемът може да е, че не се търси в корена, а спрямо /Library/WebServer/Documents директория. Прав ли съм? Как мога да поправя това?

Тъй като Rijk не искаше да отговори на собствения си въпрос, решението беше, че трябваше да добавят този ред във файла .htaccess.

RewriteBase /~rwel/dev/quaestio 

Надявам се това да помогне на някой друг.

Какво ще кажете за пренасочване към обикновен html файл и да видите дали това работи?

Опитайте също да използвате този синтаксис:

RewriteRule ^. * $ /Index.php

  • Благодаря ви, опитах, но това нямаше желания ефект. Установих, че е работил след добавяне на този ред: RewriteBase /~rwel/dev/quaestio. Как така не трябва да правя това на сървърите на Debian?
  • 1 @Rijk Имате право да отговорите на собствения си въпрос, затова ви предлагам да го направите.

е работил за вас: Charles Robertson | Искате ли да се свържете с нас?