Я хочу создать веб-сайт с чистым PHP. Я хочу скрыть параметры URL. Т.е. я хочу сделать свой веб-сайт чистыми URL-адресами. Есть ли способ сделать это без использования каких-либо фреймворков? Помогло ли это cURL?
См. Переписывание URL-адресов на PHP без .htaccess
если вы не хотите или не можете использовать .htaccess
, иначе обратитесь к разделу Как переписывать URL-адреса в PHP? ,
Просто взгляните на это … прежде чем начинать свои вещи
http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
Прежде всего: это невозможно только с PHP (по крайней мере, не с теми формами URL, которые я думаю при чтении чистого URL). Веб-сервер должен знать, как обрабатывать запросы и какие запросы предназначены для передачи на ваш PHP-скрипт. В противном случае вы, вероятно, просто получите ответ 404.
Поскольку поведение веб-сервера по умолчанию заключается в том, чтобы просто взять запрошенный URL-адрес и попытаться сопоставить его с существующим файлом ниже корня документа. Если был найден соответствующий файл, содержимое файла передается обратно клиенту или, как в случае файлов PHP, содержимое файла передается соответствующему интерпретатору, а возвращенные данные передаются клиенту. И если файл не найден, ну, он отвечает кодом состояния 404. Поэтому в какой-то момент вам нужно настроить свой веб-сервер.
Но после этого, когда запрос был передан вашему скрипту PHP, вы можете использовать только PHP для установления чистых URL-адресов. И я бы предпочел сделать это с PHP, чем с помощью утилит веб-сервера. Потому что ваше PHP-приложение должно лучше знать, как обрабатывать запрошенный URL-адрес.
В PHP вся необходимая информация находится в переменной $_SERVER
:
$_SERVER['REQUEST_URI']
содержит запрашиваемый URL-адрес и запрос (вы можете разобрать его с помощью parse_url
) и $_SERVER['PATH_INFO']
содержит PATH_INFO, если вы используете его (см . Директиву Apache AcceptPathInfo
). Из того, что я прочитал и понял, есть два способа сделать это:
mod_rerite
где все, похоже, mod_rerite
с помощью переписывания правил через файл .htaccess
который достаточно прост в использовании, но может накладывать большую нагрузку на веб-сервер с большими сайтами .htaccess
но только для перенаправления всего обратно на index.php, когда диспетчер перенаправляет пути по мере необходимости. Там есть фантастический учебник по phpvideotutorials.com, учебник называется tumblelog. Нет, никакой скручивания или рамки не делают этого. Ни php вообще.
Это веб-сервер, который имеет дело с URL-адресами.
Итак, если вы хотите поддельные URL-адреса, вам нужно настроить свой веб-сервер для перенаправления определенных URL-адресов на определенные скрипты.
Наиболее распространенным способом является использование веб-сервера Apache с модулем mod_rewrite
Попробуйте переписать url, используя php и переписать url, используя .HTACCESS .
Например, исходный URL,
www.domain.com/item.php?product=Cars for sale in amazon
с php
www.domain.com/item.php?product=Cars-for-sale-in-amazon
и с файлом .HTACCESS
www.domain.com/Cars-for-sale-in-amazon