Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: -
цитата
28/05/14 в 12:08
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:16), всего редактировалось 2 раз(а)
цитата
28/05/14 в 14:55
 AWD
utf-8 и никак иначе. а еще начни спрашивать, почему пробелы в %20 "превращаются". да и не у всех браузеров...
читайте буки...
цитата
28/05/14 в 17:32
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:16), всего редактировалось 1 раз
цитата
28/05/14 в 18:37
 AWD
батенька, есть разные браузеры
например, лиса - пробеля аля %20 оно оставляет пробелами. опера сделает %20. это еще не айсберг...
для затравки - сам думай. кому мы нужны?
цитата
28/05/14 в 19:32
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:15), всего редактировалось 1 раз
цитата
02/11/14 в 19:24
 ibiz
а подскажите, можно ли как-то сделать проверку наличия файла в папке, и если его нет, то грузить index.php
сейчас работает такая конструкция:
Код:

RewriteRule ^(.*)\.html$ \/page\/$1\.php [NC,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]

по запросу site.com/page2.html идет обращение к файлу page2.php в папке /page/, если файла page2.php нет, то грузится index.php
а как сделать, чтоб урл был site.com/page2 ?
цитата
02/11/14 в 19:41
 Nux
примерно так
Код:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L]
цитата
02/11/14 в 23:29
 ibiz
вот я на этом и застопорился, как проверить файл в директории, надо что-то типа так, но это не работает
Код:

RewriteCond \/page\/%{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ \/page\/$1.php [L,QSA]
цитата
02/11/14 в 23:39
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:15), всего редактировалось 1 раз
цитата
02/11/14 в 23:44
 Nux
ну типа такого, или я тебя недопонимаю...

Код:

RewriteRule ^(.*)\.html$ page/$1\.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L]


Последний раз редактировалось: Nux (03/11/14 в 00:30), всего редактировалось 1 раз
цитата
02/11/14 в 23:49
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:15), всего редактировалось 1 раз
цитата
03/11/14 в 10:00
 ibiz
Nux писал:
ну типа такого, или я тебя недопонимаю...

Код:

RewriteRule ^(.*)\.html$ page/$1\.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L]


вот такая конструкция сейчас работает, при запросе GET /file.html дергается /page/file.php
а как сделать, чтоб при запросе GET /file дергался /page/file.php ?
по логике вещей, я сделал RewriteRule ^(.*)$ page/$1\.php, но не заработало
цитата
03/11/14 в 10:01
 ibiz
Ailk писал:
скорее даже наверное и работать тоже не будет. нада как-то так:
Код:
RewriteCond %{REQUEST_URI} ^/([^/]+).html$ [NC]
RewriteCond %/page/%1.php -f [NC]
RewriteRule ^(.*)$ \/page\/$1.php [L,QSA]
RewriteCond %/page/%1.php !-f [NC]
RewriteRule ^(.*)$ index.php [L]


в теории должно пахать )


скопировал 1 в 1 не заработало icon_rolleyes.gif
цитата
03/11/14 в 11:24
 Nux
ibiz писал:
а как сделать, чтоб при запросе GET /file дергался /page/file.php


добавить ПЕРВЫМ правило

Код:

RewriteRule ^([a-z0-9]+)$ page/$1\.php



где a-z итп допустимые символы в имени, фильтровать символы желательно в обоих случаях...
цитата
03/11/14 в 11:35
 ibiz
Nux писал:
добавить ПЕРВЫМ правило

Код:

RewriteRule ^([a-z0-9]+)$ page/$1\.php



где a-z итп допустимые символы в имени, фильтровать символы желательно в обоих случаях...


супер, теперь заработало как надо! smail54.gif
P.S. мне еще надо было кириллицу обрабатывать, сделал так
Код:

RewriteRule ^([а-яА-Яa-zA-Z0-9.]+)$ page/$1\.php
цитата
03/11/14 в 12:36
 Nux
с кириллицей будут грабли icon_smile.gif

ты забыл про Ё т.к она не входит в а-я...
[ёЁа-яА-Яa-zA-Z0-9]

регистронезависимость можно ставить через [NC]
цитата
03/11/14 в 19:27
 Ailk
-

Последний раз редактировалось: Ailk (18/09/16 в 00:15), всего редактировалось 1 раз
цитата
03/11/14 в 19:32
 Nux
... Задать кодировку в ответе сервера.


Эта страница в полной версии