Apache переписывает скрыть расширения - PullRequest
0 голосов
/ 09 декабря 2010

Может быть, просто сложный вопрос,

Но для моего сайта я использую, чтобы скрыть расширения файлов в URL, используя эту строку в моем .htaccess:

RewriteEngine On
RewriteRule ^(.+)/$ $1.php [L]

Он отлично работал на моем сервере, но не локально с MAMP. Но это не имело большого значения.

Но теперь я выбрал выделенный сервер, и у меня реальная проблема, я не работаю на нем. Это странно, потому что другие правила переписывания, такие как:

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_]+)$ place.php?place=$1 [L]
RewriteRule ^([a-zA-Z0-9_]+)/$ place.php?place=$1 [L]

отлично работают !!

Есть ли конкретная конфигурация, которая должна быть сделана в некотором файле Apache, чтобы эта штука работала?

Большое спасибо за ваше время

Гийом

РЕДАКТИРОВАТЬ: Больше моего .htaccess:

RewriteEngine On

RewriteRule ^(.+)/$ index.php?$1 [L]

RewriteRule ^fullscreen-([a-zA-Z0-9_]+)$ place.php?place=$1 [L]
RewriteRule ^fullscreen-([a-zA-Z0-9_]+)/$ place.php?place=$1 [L]
RewriteRule ^fullscreen-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)$ fullscreen.php?place=$1&event=$2 [L]
RewriteRule ^fullscreen-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)/$ fullscreen.php?place=$1&event=$2 [L]
RewriteRule ^fullscreen-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)$ fullscreen.php?place=$1&event=$2&sort=$3 [L]
RewriteRule ^fullscreen-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)/$ fullscreen.php?place=$1&event=$2&sort=$3 [L]

Ответы [ 3 ]

0 голосов
/ 09 декабря 2010

разрешено переопределение (AllowOverride All) в вашем httpd.conf

0 голосов
/ 06 июня 2011

Нужно, что:

Options +FollowSymlinks
Options +MultiViews
0 голосов
/ 09 декабря 2010

проверьте для mod_rewrite, включен ли он с помощью php делая

echo phpinfo();

, поэтому вы должны включить mod_rewrite в httpd.conf файле

  1. Найдите файл httpd.conf (обычно вы найдете его в папке называется conf, config или что-то те строки), если у вас есть файл платформы LAMP можно найти здесь /etc/httpd/conf/httpd.conf
  2. Внутри файла httpd.conf раскомментируйте строку LoadModule rewrite_module modules / mod_rewrite.so (уберите знак фунта "#" из передний край)
  3. Также найдите строку ClearModuleList без комментариев найти и убедиться, что линия AddModule mod_rewrite.c не является закомментировано.

http://www.tutorio.com/tutorial/enable-mod-rewrite-on-apache

...