Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Создание ссылки без дубляжа htaccess
 
 автор: sedoy   (29.03.2014 в 01:04)   письмо автору
 
 

Доброе время суток товарищи программисты, подскажите пожалуйста как исправить такой момент или как его обойти.

Есть файл htaccess, с такими строками:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]


И есть файл index.php c такой строкой:

<a href="null/one">Ссылка</a>

Смысл проблемы таков, что первая раз данная ссылка срабатывает отлично, но в последующие разы, при клике на нее происходит дублирование null, сколько раз нажал, столько раз и продублировал.

Пример:
Нажата 1 раз http://localhost/tresting/null/one

Нажата 5 раз http://localhost/tresting/null/null/null/null/null/one

  Ответить  
 
 автор: psychomc   (29.03.2014 в 01:14)   письмо автору
 
   для: sedoy   (29.03.2014 в 01:04)
 

<a href="/null/one">Ссылка</a>

  Ответить  
 
 автор: sedoy   (29.03.2014 в 06:12)   письмо автору
 
   для: psychomc   (29.03.2014 в 01:14)
 

В Вашем случае происходит следующее, что по нажатию на ссылку переходит по адресу http://localhost/null/one, а в мое случае нужно http://localhot/cms/null/one, без добавления в основную ссылку директории cms, а именно <a href="/cms/null/one">Ссылка</a>

  Ответить  
 
 автор: psychomc   (29.03.2014 в 12:18)   письмо автору
 
   для: sedoy   (29.03.2014 в 06:12)
 

какую-то лажу вы делаете, честное слово. ссылка должна идти на cms, но в ссылке не должно быть cms...это как понимать? неужели так трудно разобраться что есть абсолютные ссылки, что есть относительные? вопросы отпадут сразу сами собой
не нравится прописывать полные ссылки - напишите нормальный роутер, который по названию маршрута сможет ассемблить ссылки. тогда вообще изменяя только маршрут можно будет одним махом изменять все ссылки на всем сайте, и ссылка сможет содержать какую угодно вложенность чего угодно

  Ответить  
 
 автор: sedoy   (31.03.2014 в 13:26)   письмо автору
 
   для: psychomc   (29.03.2014 в 12:18)
 

Я понимаю, что в некоторых местах некорректно задан вопрос, подскажите как написать пример "Нормального роутера" или подскажите статьи более менее адекватные.

  Ответить  
 
 автор: psychomc   (31.03.2014 в 14:13)   письмо автору
 
   для: sedoy   (31.03.2014 в 13:26)
 

для начала всё-таки лучше разберитесь в относительных и абсолютных ссылках в HTML

  Ответить  
 
 автор: sedoy   (29.03.2014 в 06:12)   письмо автору
 
   для: psychomc   (29.03.2014 в 01:14)
 

В Вашем случае происходит следующее, что по нажатию на ссылку переходит по адресу http://localhost/null/one, а в мое случае нужно http://localhot/cms/null/one, без добавления в основную ссылку директории cms, а именно <a href="/cms/null/one">Ссылка</a>

  Ответить  
 
 автор: sedoy   (29.03.2014 в 06:12)   письмо автору
 
   для: psychomc   (29.03.2014 в 01:14)
 

В Вашем случае происходит следующее, что по нажатию на ссылку переходит по адресу http://localhost/null/one, а в мое случае нужно http://localhot/cms/null/one, без добавления в основную ссылку директории cms, а именно <a href="/cms/null/one">Ссылка</a>

  Ответить  
 
 автор: tvv123456   (29.03.2014 в 09:38)   письмо автору
 
   для: sedoy   (29.03.2014 в 06:12)
 

Если разработку делаете на denwer, то сделайте симуляцию нормального домена, как это было бы на реальном сайте. Тогда и абсолютные ссылки будут корректно работать.
Для этого достаточно в папке home создать папку с именем тестового домена(напр., mysite.ru) в этой папке создать папку www и в ней расположить свой сайт

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования