Страница 1 из 1

Access forbidden и символ ":" в адресной строке

Добавлено: 22 мар 2014, 08:50
wh0am1
Использую mod-rewrite.
И если ввести такой адрес: site.ru/asd123:r, то выбивает Access forbidden
Такое только на OpenServer.

Работал в убунту, а так же на хостинге, все отлично работает.
Помогите решить проблему.
Версия 4.9.0, Апач 2.2.6

Добавлено: 22 мар 2014, 09:50
duxabilii
Выложите код из .htaccess, посмотрим

Добавлено: 22 мар 2014, 10:22
wh0am1
<FilesMatch "\.(tpl|ini)$">
	Order Deny,Allow
	Deny from all
</FilesMatch>

AddDefaultCharset UTF-8

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php [QSA,L]
Правила на php.
		array (
			'pattern' => '~^/([a-z0-9]+):([a-z])$~',
			'file' => 'index',
			'class' => 'Index',
			'method' => 'Options',
			'aliases' => array ( 'key', 'opt' ) 
		),

Добавлено: 22 мар 2014, 15:31
Максим
Под Windows в URI не может быть символа : ввиду особенностей файловой системы NTFS. Так что вы никак не сможете его использовать.

Добавлено: 22 мар 2014, 17:16
wh0am1
Понятно. Спасибо за ответ. А то так и ломал бы голову. Ну не беда, буду править напрямую с хоста :)

Добавлено: 23 мар 2014, 23:13
DelphinPRO
Извиняюсь, а какое отношение имеет URI к файловой системе?

Добавлено: 24 мар 2014, 11:27
Максим
DelphinPRO писал(а):Извиняюсь, а какое отношение имеет URI к файловой системе?
Очевидно же - при получении запроса сервер пытается найти файл на диске, а файловая система у большинства NTFS. Вообще спросите у разработчиков Apache, если вас интересует этот вопрос более детально.