Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
1 / 1 / 0
Регистрация: 05.05.2010
Сообщений: 26
1

Url без index.php?r=

24.07.2014, 11:21. Показов 1777. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, дорогие профессионалы!

Я хочу чтобы сервером обрабатывались ссылки вида:
http://test2.loc/r/4
Как http://test2.loc/r/index.php?r=4
Т.е. Я ввожу в браузер ссылку http://test2.loc/r/4, а сервер не выдает ошибку, а передает в файл index.php параметр r=4.

Написал вот такой файл htaccess:
PHP
1
2
3
4
5
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(\w+)(?:/(\w+))?/?$ index.php?r=$1
Но в результате получается, что могу вводить только
http://test2.loc/r/?r=4
Что не правильно?
как сделать чтобы кушал ссылки вида: http://test2.loc/r/4
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.07.2014, 11:21
Ответы с готовыми решениями:

Base Url класса /index.php?data=s1/
Добрый день, возможно ли задать BASE url класса http://domain.net/index.php?data=s1/, если base url...

Htaccess - удаление index.php из url с исключениями
Здравствуйте. Есть следующий код в .htaccess: RewriteEngine on RewriteCond $1...

Убрать index.php без mod_rewrite и переадресации
Привет всем! Такая проблема: В движке WordPress есть такая фича: "безболезненное" удаление...

index.php
Подскажите,кто знает,пожалуйста!Проблема такая.Вместо сайта открывается окно,предлагающее скачать...

8
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
24.07.2014, 11:47 2
Цитата Сообщение от Q42Tje60wI Посмотреть сообщение
RewriteRule ^(\w+)(?:/(\w+))?/?$ index.php?r=$1
А что это такое страшное? А если так написать
Код
RewriteRule ^r/(.*)$ index.php?r=$1 [L]
0
1 / 1 / 0
Регистрация: 05.05.2010
Сообщений: 26
24.07.2014, 12:57  [ТС] 3
Попробовал с вашим вариантом:
PHP
1
2
3
4
5
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^r/(.*)$ index.php?r=$1 [L]
Ввел адрес: http://test2.loc/r/8
Результат: Ошибка - Not Found
0
142 / 142 / 63
Регистрация: 18.07.2014
Сообщений: 473
24.07.2014, 13:13 4
Попробуй так

PHP
1
2
3
4
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteRule ^r/(.*)$ r/index.php?r=$1 [L]
0
1 / 1 / 0
Регистрация: 05.05.2010
Сообщений: 26
24.07.2014, 15:37  [ТС] 5
Опять Ошибка - Not Found
0
142 / 142 / 63
Регистрация: 18.07.2014
Сообщений: 473
24.07.2014, 17:21 6
Сорри, я ошибся, вот так надо:

PHP
1
2
3
4
5
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/r/index.php
RewriteRule ^r/(.*)$ /r/index.php?r=$1 [L]
0
1 / 1 / 0
Регистрация: 05.05.2010
Сообщений: 26
25.07.2014, 12:11  [ТС] 7
Положил файл .htaccess в папку r рядом с файлом index.php:
PHP
1
2
3
4
5
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/r/index.php
RewriteRule ^r/(.*)$ /r/index.php?r=$1 [L]
Ввел: http://test2.loc/r/8
Результат: The requested URL /r/8 was not found on this server.
P.S. Тестирую на Denwere
0
142 / 142 / 63
Регистрация: 18.07.2014
Сообщений: 473
25.07.2014, 13:17 8
Это нужно положить в корень а не в папку /r, а в папке /r конечно должен быть index.php в котором сделайте вывод переменной echo $_GET['r'] , я проверил у меня всё работает
0
1 / 1 / 0
Регистрация: 05.05.2010
Сообщений: 26
25.07.2014, 14:19  [ТС] 9
Да, сработало! Спасибо!
0
25.07.2014, 14:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.07.2014, 14:19
Помогаю со студенческими работами здесь

Ссылка на index.php
Народ подскажи пожалуйста, как сделать ссылку на саму же index.php без потери footer'a header'a и т...

Редирект на index без перехода в папку
.htaccess содержит такое: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond...

Как работает url такого типа index.php/reg/index
Мне интересно как это работает. И в каких случаях это пригодится. Встречал такой url в cms. Я...

Как переименовать index.php в general? Повлияет ли это на переменные после '?' в url строке?
Доброго времени суток. Вопрос избитый, простите. Как переименовать index.php в general? Или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru