- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте, уважаемые участники сёрча!
Есть index.php в котором:
<?php echo $_GET['t']; ?>
Ввожу в адресную строку:
localhost/test/?t=1-vasya.pupkin-p1...
Скрипт выводит:
1-vasya.pupkin-p1...
Создаю файл .htaccess, в котором пишу:
RewriteEngine on
RewriteRule ^([0-9]+-[a-z]+\.[a-z]+-p[0-9]+)$ ?t=$1
Ввожу в адресную строку:
localhost/test/1-vasya.pupkin-p1...
Скрипт выводит:
1-vasya.pupkin-p1 ( без точек )
Подскажите, пожалуйста, как сделать так, чтобы в конце могли бы быть только цифры?
ТС, вчера тема подымалась же!
В смысле могли бы быть? Чтобы вообще нереально было УРЛ такой написать? Или чтобы если с точками, то отдавал 404 страницу? Или редиректил на главную? Хотелки свои грамотней изложите.
Милованов Ю.С, да, тему поднимал, но решил переформулировать вопрос, поэтому создал новую. Я бы хотел, чтобы если в конце запроса точки, то отдавалась 404. Но я не понимаю, почему правило не реагирует на точки, которые написаны в конце гет-запроса.
Вам обязательно в ХТАЦЦЕСС?
В теле скрипта не устроит?
if (последний_символ($_GET['youVar']) == '.')
header("HTTP/1.0 404 Not Found");
Нет, в htaccess не обязательно.
Извините, не понял if (последний_символ($_GET['youVar']) == '.')?
И, кстати, если вводить localhost/test/1-vasya.pupkin-p1... а не localhost/test/?t=1-vasya.pupkin-p1... , то в $_GET['t'] нет последних точек, поэтому вот это: if (последний_символ($_GET['youVar']) == '.') походу дела не сработает.
localhost/test/1-vasya.pupkin-p1
Ну так и надо.
Вы же реврайт руль прописали.
А localhost/test/?t=1-vasya.pupkin-p1... это прямой запрос
вы вчера писали, чтобы нельзя было по этому адресу достучаться
Что сейчас желаете?
Так вся соль в том, что страница 1-vasya.pupkin-p1 открывается и по запросу 1-vasya.pupkin-p1 и по запросу 1-vasya.pupkin-p1. и по запросу 1-vasya.pupkin-p1..................... А мне надо чтобы эта страница открывалась только по запросу 1-vasya.pupkin-p1
Даже можно и проще сделать. Написал в htaccess вот что:
RewriteEngine on
RewriteRule ^([a-z]+)$ ?t=$1
Ввожу в адресную строку localhost/test/aa...
Скрипт выводит aa ( Опять же без точек!!!)
Ввожу в адресную строку localhost/test/?t=aa...
Скрипт выводит aa... Как положено, с точками!
Так как тогда проверить что ввел пользователь? Или это не реально? Не верю!
rubodon, одной темы мало? Очевидно что это особенность rewriteRule, он не перехватывает точки, и соответственно не передает дальше скрипту. Поэтому без мод_реврайта показываются, а с ним - нет.
siv1987, а как же быть? Не использовать мод рерайт я не могу, а с ним, получается не могу проверить, есть ли точки в конце урла или нет? Или все-таки как-то можно это проверить, несмотря на мод рерайт?
ТС, залейте все файлы на файлообменник в RAR архиве и дайте линк.
Приду домой - проверю. Уж очеееень интересно, что у Вас там.
http://onedayfiles.com/E2xszQAhUB