Intereting Posts
Предупреждение: mysql_num_rows (): предоставленный аргумент не является допустимым ресурсом результата MySQL PHP – импортировать CSV-файл в базу данных mysql. Используя LOAD DATA INFILE Время выполнения тестов печати PHPUnit PHP unserialize jQuery FORM post Загрузка файлов Zip, но недействительна? Запись в xml-файл, когда оператор javascript if равен true Слияние Doctrine: всегда обновляется поле DateTime Когда ajaxVar инициализируется в CActiveForm Как конвертировать PDF в SWF с помощью PHP PHP: как отобразить несколько записей таблицы MySQL в строке таблицы HTML с помощью MySQLi Как проверить либо Zend_Form_Element_File, либо Zend_Form_Element_Text не пустые. Чтение большого файла по строкам или сохранение его строк в массиве Symfony2 – создайте фильтр Doctrine для выбора текущих пользовательских данных запуск showdown.js serveride для преобразования Markdown в HTML (в PHP) Как заставить Propel сохранить ассоциативный формат с помощью особых выборок?

PHP – Как добавить заголовок страницы в URL? И как создать чистый URL-адрес с помощью PHP

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

Вот мой текущий url ссылка на элемент и как он выглядит в браузере

http://www.example.com/members/1/posts/page.php?aid=123 

Но я хочу, чтобы он прочитал название страницы.

 http://www.example.com/members/1/posts/title-of-current-page/ 

Сначала вам нужно создать «title-of-current-page» из PHP, используя эту функцию, например:

 function google($string){ $string = strtolower($string); $string = preg_replace('/[^a-zA-Z0-9]/i','-',$string); $string = preg_replace("/(-){2,}/",'$1',$string); return $string; } 

Во-вторых, вам нужно сделать переписку, но вы должны сохранить помощь в форме «/ 123-title-of-current-page»,

Переписать будет что-то вроде этого (я игнорирую весь URL)

 RewriteRule ^([0-9]+)-(.*?)$ page.php?aid=$1 [L,QSA] 

Вы можете сделать это, используя mod_rewrite:

Вам нужно будет отредактировать файл с именем .htaccess на верхнем уровне вашей веб-папки. Здесь вы можете указать определенные параметры, чтобы контролировать способ доступа Apache к элементам в этой папке и ниже.

Прежде всего. Включим mod_rewrite: RewriteEngine On

 RewriteRule ^([az]+)/([az\-]+)$ /$1/$2.php [L] 

Правило соответствует любому URL-адресу, который формируется из строчных букв, за которым следуют символы /, затем более строчные буквы и / или дефисы, и добавляет .php в конец. Он отслеживает что-либо, заключенное в скобки () и ссылается на них позже как на $ 1 и $ 2, то есть на первое и второе совпадения. Поэтому, если кто-то посещает эти URL-адреса:

http://example.com/weblog/archive

он будет преобразован в следующее:

http://example.com/weblog/archive.php

Вы найдете более подробную информацию о:

http://wettone.com/code/clean-urls

Вы должны использовать переписывание для направления всех запросов в существующий php-файл, иначе вы получите все 404 not found ошибок, потому что вы пытаетесь получить страницу, которой просто нет.

Если вы не перепишете свою страницу 404 чтобы обрабатывать все запросы, и вы определенно не хотите туда …