Редактировать # 2: я отключил свою страницу 404, и страница по умолчанию не найдена говорит, что она ищет URL с .php после него:
"Запрошенный URL /events/2012.php не найден на этом сервере"
Так что теперь я считаю, что он ищет настоящий файл, когда он не существует. кто ??
Редактирование # 1: похоже, что перенаправление цикла исправлено, но я до сих пор не могу понять, почему перезаписи не работают на странице событий. / events / работает просто отлично, но / events / 2012 / title-id / идет на 404. / breweries / и arizona-breweries / brewery-name / works также, так что я не уверен, чего мне не хватает.
Я пытаюсь добавить новую структуру каталогов со своей страницей events.php. события / 2012 / ...
У меня есть другая структура каталогов в breweries.php, которая прекрасно работает.
Когда я пытаюсь загрузить событие sitename.com/events/2012/title-of-event-3/, он перенаправляет циклы и говорит «слишком много перенаправлений», а URL выглядит так:
sitename.com / Событие / 2012 / титульные из-событий-3.php.php.php.php.php.php.php.php.php.php.php /
Я полагаю, что 6 часов поиска ответа было достаточно. Любая помощь приветствуется!
(и нет, у меня нет sitename.com в моем реальном файле htaccess)
Мой файл htaccess:
Options +FollowSymLinks -Multiviews
RewriteEngine on
RewriteBase /
#remove php file extension
#RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteCond %{REQUEST_URI} !^/blog/
RewriteRule ^(.*)/$ $1.php [QSA,L]
#clean urls
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^events/([0-9]+)/(.*)-([0-9]+)/$ events.php?year=$1&title=$2&id=$3 [R,NC,QSA]
RewriteRule ^(.*)-breweries/$ breweries.php?loc=$1 [NC,QSA]
RewriteRule ^(.*)-breweries/(.*)/$ breweries.php?loc=$1&brewery=$2 [NC,QSA,L]
#Force trailing slash after url
RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_URI} !example.php
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://www.sitename.com/$1/ [L,R=301]
#force www
RewriteCond %{HTTP_HOST} !^www.sitename.com$
RewriteRule ^(.*)$ http://www.sitename.com/$1 [R=301,L]