Как сделать красивую ссылку php

Красивый URL

Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php

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

Итак, приступим к созданию простых адресов. Для начала нужно выяснить, поддерживает ли ваш сервер mod_rewrite. Если вы пользуетесь платным хостингом, обратитесь в службу поддержки или к администратору сервера с просьбой уточнить этот момент и в случае чего добавить такую возможность.

Теперь давайте немного разберемся с синтаксисом построения указаний. Команда RewriteRule указывает серверу на перенаправление, ^/(.+)/dn_pg=(.+) — какой запрос перенаправлять, /cgi-bin/download.cgi?id=$1&name=$2 — реальный адрес перенаправления, наконец, [T=application/x-httpd-cgi,L] указывает на CGI/Perl-скрипт.

Теперь зададим правило для перенаправления по второму примеру:

Последняя строка задает формат, в данном случае цифры от 0 до 9 — (1+), — и перенаправляет каждую цифру на соответствующий адрес ($1,$2).

Запись (2+) свидетельствует про обработку только цифр, то есть буквы затрагиваться не будут.

Также бывают ситуации, когда нужно сделать редирект со старой страницы на новую. Вот пример подобного сценария:

Бывают такие ситуации, когда нужно, чтобы начальная страница запускалась с множеством параметров (это когда вы используете CGI- или PHP-скрипты и хотите, чтобы при первой загрузке сайта в них передавались какие-нибудь данные).

Если добавить в [T=application/x-httpd-cgi,L] параметр R, то перенаправление будет явным, а не скрытым.

Сначала перенаправляем http://www.my-site.com.ua на home, далее index.html на тот же home (на тот случай, если кто-нибудь вздумает набрать в строке браузера http://www.my-site.com.ua/index.html) и в конце перенаправляем home на cgi-bin/index.cgi?topic=main&page=1.

Хочу заметить одну важную деталь — если в строке браузера ввести http://www.my-site.com.ua/home/ (в конце добавим /), то пользователь получит ошибку. Это связано со спецификой компонента mod_rewrite. Поэтому для таких ситуаций нужно прописывать еще одну строку:

Напоследок хочу сказать, что mod_rewrite можно использовать и для более сложных задач, например для поиска нужных файлов в разных каталогах, а также для виртуальных доменов.

Источник

htaccess и красивые ссылки

Я пытаюсь написать простой блог, который работает нормально, пока я не доберусь до симпатичных ссылок.

то, что я хочу сделать, это использовать URL-адреса, такие как mysite.com/blog/this_post и передать его в файл index.html в качестве параметра url, так что index.html? blog = this_post

Был поиск везде и нашел кучу кода htaccess, но большинство не работало. Я нашел одно решение, которое пытается работать, но по какой-то причине не делает это правильно. (с частью Options + FollowSymLinks и без нее)

когда я использую это, я получаю /blog/index.html?blog=index.html в URL вместо того, чтобы сохранить / blog / this_post и перенести его в index.html, как и ожидалось. Может ли что-то на сервере быть установлено неправильно? все остальное в блоге работает как шарм, но ничего страшного в скрипте — просто получение симпатичных ссылок для работы.

Посмотрел старый сайт, на котором есть WordPress и который копировал этот код htaccess, но он делает то же самое. Все остальные поиски здесь и на других сайтах указывают на то же решение выше или на wordpress, но по какой-то причине он передает index.html в сценарий, а не последний URL-сегмент «this_post», как и ожидалось.

что должно произойти, это пользователь вводит в

что остается в адресной строке правильно? но файл htaccess извлекает this_post и передает его в качестве аргумента в скрипт index.html. что должны делать приведенные выше примеры. почему он меняет адресную строку на

я не уверен почему

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

Решение

Лучший способ — сделать что-то простое:

тогда вы можете сделать URL-адрес, как:

Таким образом, вы можете сделать оба звонка и будет работать нормально.

Другие решения

Кажется, я нашел комбо, которое работает, комбо флага [NC, L] продолжает давать мне ошибку сбоя, поэтому я оставил его просто [NC]. Наличие его в корневом каталоге учетных записей, кажется, также не работает, поэтому я перешел в веб-каталог (public_html), и это работает на данный момент.

До сих пор не уверен, почему флаг L вызывает сбой сервера на страницах или почему не работает его в корне, но перемещение его в папку public_html делает, возможно, это проблема конфигурации сервера, которую я пропускаю?

Источник

несколько способов сделать красивые url. что лучше?!

Новичок

несколько способов сделать красивые url. что лучше?!

решил сделать красивые Url на своем CMS. во первых это красиво, а во вторых это полезно для поисковиков Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php(всем известно что если url ведет на статическую страницу, например www.my.com/photoshop_tutorials.html, то поисковик (тот же гугл) учитывает и url в поиске Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php)

знаю по крайней мере 2 способа сделать красивые url:

вариант №1 «мод реврайт»:

ссылки на странице выглядят красиво, например «www.my.com/news/342/» но на самом деле модреврайтом ссылка переделывается в «www.my.com/index.php?p=news&pg=342»

вариант нормальный, но имхо: 1.возможно не на всех хостингах есть реврайт, и 2.не очень хочется передрачивать каждый запрос Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php

вариант №2 «файл без расширения»:

тут конечно тоже не обойтись без htaccess или переконфигурирования apache, но всеже без переделки все ссылок.
значит так, создаем в корне файл news, в htaccess (или в конфиге apache) пишем что этот файл выполняется как php файл, и все.
т.е.когда заходим по адресу: www.my.com/news/342/ на самом деле выполняется файл news в который передается значение 342

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

что вы предложите? (возможно даже есть и другие варианты Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php)

Источник

Как сделать красивую ссылку с использованием ЧПУ

Как пищут мы должны получить ссылку: http://../site/index.php/news,
но к сожалению реврайт не произощел.
Где ощибка или в чем здесь может быть причина?

Добавлено через 23 часа 19 минут
Проблема решена.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Необходимо сделать редирект на https с использованием ЧПУ
Здравствуйте, столкнулся со следующей проблемой: На сайте успешно используется ЧПУ, но появилась.

Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку phpКак сделать красивую кнопку?
Искал я на просторах интернета: «Как сделать кнопку более красивой?», ничего нормального не.

Как сделать красивую форму?
Где-то полгода назад я наткнулся в инете на библиотеку элементов формы (в основном поле text).

Хоть проблема решена, все равно напишу, поскольку многие пользователи сталкиваются с такой проблемой..

Добавлено через 9 минут
У меня возник еще один вопросс..
Вобщем файл index.php ссылки делает короткие и понятные, но в этом файле содержаться 2 ссылки ведущие к фалам show.php и edit.php..

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как сделать красивую тень?
Такой вопрос Как сделать тень от слоя?

Как сделать красивую всплывающую подсказку?
Как сделать красивую всплывающую подсказку вместо стандартного желтого прямоугольника в.

Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку phpКак сделать красивую навигацию на сайте
К примеру, есть такая картинка островок, в котором есть зоны, по которым пользователь может.

Как сделать красивую навигацию между страницами?
Сайт На нем в центральном блоке внизу есть переключение между страницами,оно стоит очень.

Источник

Как сделать ЧПУ-ссылки

Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php

Чтобы мы говорили об одном и том же, давайте окончательно определимся с понятием ЧПУ-ссылки. Возьмём для примера мой сайт. Посмотрите сейчас в адресную строку. Вы там увидите следующее: http://myrusakov.ru/php-furl.html. Таким образом, можно подумать, что сайт состоит из простого набора HTML-страниц, что, безусловно, не так. В реальности ссылка выглядит так: http://myrusakov.ru/?view=article&id=271. Вот как раз замена последней ссылки на ту, что Вы сейчас видите, и называется преобразованием обычной ссылки в ЧПУ-ссылку.

Теперь же перейдём к реализации. Здесь всё достаточно сложно, поэтому если Вы не обладаете соответствующими знаниями, то лучше пропустите данную статью, и вернитесь к ней позднее. Само преобразование состоит из двух этапов:

Второй этап не легче первого. Сначала нужно добавить в файл .htaccess следующие строчки:

В данных строках происходит следующее: если пользователь делает запрос к несуществующему файлу или к несуществующему каталогу, то этот запрос передаётся к главной странице сайта (index.php), в которой он уже дальше будет обрабатываться. Например, Вы пишите в адресной строке: http://myrusakov.ru/php-furl.html. Такого файла не существует, поэтому этот запрос передаётся в файл index.php.

В файле index.php этот запрос должен обработаться, и должно произойти обратное преобразование из ЧПУ-ссылки в обычную ссылку. А уже с обычной ссылкой, Вы легко справитесь. Аналогично с прямым преобразованием (из обычной ссылки в ЧПУ) обратное преобразование также уникально для каждого движка.

Как можно понять из прочитанного, вся сложность состоит в преобразованиях, а сам общий алгоритм очень простой.

И, напоследок, хочу затронуть плюсы и минусы ЧПУ-ссылок. Начнём с плюсов:

Серьёзных минусов я могу выделить только два:

И, наконец, хочу отметить, что вариантов создания ЧПУ-ссылок существует далеко не один. Если преобразования совсем простые, то достаточно использовать лишь файл .htaccess, разумеется, написав там соответствующий код. В этой же статье я показал Вам, на мой взгляд, самый простой способ создания ЧПУ-ссылок, которым я сам уже много раз пользовался.

В общем, подумайте, нужны ли Вам ЧПУ-ссылки, и если нужны, то делайте. Уверяю Вас: во вред это точно не будет.

Как сделать красивую ссылку php. Смотреть фото Как сделать красивую ссылку php. Смотреть картинку Как сделать красивую ссылку php. Картинка про Как сделать красивую ссылку php. Фото Как сделать красивую ссылку php

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

Комментарии ( 85 ):

Добрый вечер Михаил, при создании сайта я столкнулся с проблемой создания ЧПУ ссылок, только не понимаю, как обработать ссылки в index странице, не могли бы вы создать урок по этой теме, для многих бы вопрос был бы закрыт. Спасибо вам за ваши труды.

Обработка в самом простом случае такая: if ($_SERVER[«REQUEST_URI»] == «myarticle.html») < //Выводим статью myarticle.html >Вот и вся обработка. А уже сама обработка будет меняться у каждого, в зависимости от того, где хранятся соответствия и как к ним обращаются.

Михаил спасибо, разобрался, извини за глупый вопрос :)))

А где можно подробнее почитать о первом этапе, а именно о том, как такую ссылку: http://myrusakov.ru/?view=article&id=271 заменить на http://myrusakov.ru/php-furl.html

Ключевым моментом здесь является использование регулярных выражений.

Вы затронули тему о снижении скорости загрузки страниц. А существуют ли какие-нибудь сервисы или приложения, которые позволяют тестировать время выполнения скриптов. Добустим у меня была одна функция для поиска по базе данных, я решил написать другую. На глаз прироста/потери в скорости невидно, как можно сравнить скорость их выполнения?

1. Зависит от страницы и от сервера. У меня время генерации 16-24 мс. 2. Попробуйте http://tuner/fff Если не получится, то либо index-файла нет, либо что-то всё-таки не так сделали.

Попробуйте добавить ещё это: RewriteEngine On

Через rewriterule делается: RewriteRule ^test/(7+)/$ test.php?id=$1

С папками намного проще работать, а вот обрезать пасширения файлов и менять их на другие или сделать из categories.php?id=3 в categories/3.html или post.php?id=3 в 3.html примеры выще очень сложны

Здравствуйте! Помогите понять как преобразовать вот такую ссылку /category/kosmos/index.php?id=1 вот в такую /category/kosmos/1 /category/kosmos/index.php?id=2 = /category/kosmos/2 /category/kosmos/index.php?id=3 = /category/kosmos/3 и так далее. Что-то я смотрю, читаю, а понять не могу. Спасибо!

Сработала конструкция RewriteEngine on RewriteBase / RewriteCond % !-f RewriteCond % !-d RewriteRule ^(.*)$ index.php/$1 Но при этом не подключаются ни стили, ни яваскрипты подключение которых прописано в index.php

Вопрос снят прописал абсолютные пути на эти файлы всё заработало

Код правильный, всё должно работать. Либо файл не существует, либо в сервере какая-то проблема.

Если всё грамотно делать, то никаких вложенных условий не появляется. Как делаю я, показано в данном курсе: http://srs.myrusakov.ru/php

Страничная навигация все-равно будет с условиями. Почему-то не получается вынести в функцию. Ну да не об этом. После оптимизации получил время генерации страницы от 0.008 до 0.12 на денвере. Мне пока хватит. Вопрос по обработке. При переходе по ссылке, я обрабатываю адрес строковыми функциями, это верное направление мысли или есть способы попроще и функциональнее?

Что ещё за переход по ссылке? Зачем его обрабатывать?

К примеру при переходе по ссылк site.ru/user в индекс-файле я в условии при помощи функций strstr(); strpos(); обрабатываю строк адреса, если после слеша находится всего одно слово откидываю слеш и по базе ищу пользователя с указанным именем (естественно уникальным). Нужный результат достигнут, но обработка ссылки при помощи строковых функций меня смущает. Правильно ли это или есть способ попроще?

Так я ее и анализирую. If(strpos($_SERVER[‘REQUEST_URI’], «/») === strstr($_SERVER[‘REQUEST_URI’], «/»))<.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Fatal error: Uncaught JSMin_UnterminatedRegExpException: JSMin: Unterminated RegExp at byte 3561: /.post-title--> in /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/external/php/jsmin.php:266 Stack trace: #0 /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/external/php/jsmin.php(152): JSMin->action(1) #1 /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/external/php/jsmin.php(86): JSMin->min() #2 /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/autoptimizeSpeedupper.php(38): JSMin::minify('!-f RewriteCond...') #3 /var/www/www-ivan/data/www/vesb.ru/wp-includes/class-wp-hook.php(324): autoptimizeSpeedupper->js_snippetcacher('!-f RewriteCond...', '') #4 /var/www/www-ivan/data/www/vesb.ru/wp-includes/plugin.php(205): WP_Hook->apply_filters('!-f RewriteCond...', Array) #5 /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/autoptimizeScripts.php(548): apply_filters('autoptimize_js_...', '!-f RewriteCond... in /var/www/www-ivan/data/www/vesb.ru/wp-content/plugins/autoptimize/classes/external/php/jsmin.php on line 266