Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2011, 09:24   #1
Mendler
Пользователь
 
Регистрация: 08.04.2008
Сообщений: 10
По умолчанию htaccess и header

Через .htaccess перенаправляю все страницы на index.php
Содержание .htaccess:
Код:
<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteBase /
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteCond %{REQUEST_FILENAME} !-f
	
	RewriteCond %{REQUEST_URI} !(.*)/$ 
	RewriteRule ^(.*[^/])$ $1/ [R=301]
	
	RewriteRule ^.*$ index.php [L,NC]
</IfModule>
в index.php обрабатываю входящие урлы. Необходимо, чтобы при урле www.site.ru/admin перенаправлялось на папку admin в корне сайта.
Пытаюсь сделать это через header:
PHP код:
if( $url['path'] == '/admin/' )
{
    
header"HTTP/1.1 301 Moved Permanently" );
    
header"Location: ".$url['path'] );

Вызывая тем самым рекурсию.

Что сделано не так? или как по другому можно решить данную проблему?
Mendler вне форума Ответить с цитированием
Старый 02.12.2011, 11:29   #2
Cronos20
Форумчанин
 
Регистрация: 08.07.2010
Сообщений: 679
По умолчанию

Ну уж если вы взялись за такое, то смотрите как реализуется routing в каких-нибудь фреймворках. А вообще здесь нужно не переходить на другие файлы, а делать им include
Cronos20 вне форума Ответить с цитированием
Старый 02.12.2011, 13:04   #3
Mendler
Пользователь
 
Регистрация: 08.04.2008
Сообщений: 10
По умолчанию

Добился работы скриптов исправлением .htaccess на

Код:
<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteBase /

	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
		
	RewriteRule ^(.*)$ /index.php [L,NC]
</IfModule>
убран 301 редирект на страницу со слешем в конце, если такового нет.
похоже здесь это необходимо решать внутренними средствами в index.php
Mendler вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
skipped when looking for precompiled header use, warning C4627 Почему пропущен header ? malor Visual C++ 3 26.06.2011 12:25
Заголовки (header) sisofcase PHP 4 16.07.2010 23:51
Header files Rembo Общие вопросы C/C++ 4 10.02.2008 16:09