Я пытаюсь переписать URL-адреса сайта, я должен упомянуть, что способ, которым работает index.php, теперь получает параметр p (page) и включает соответствующий файл.
Поэтому запрос страницы выглядит так:
www.domain.com/index.php?p=home www.domain.com/index.php?p=search www.domain.com/index.php?p=profile www.domain.com/index.php?p=contact
Я нашел, как создать правило перезаписи для этого:
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?p=$1
так что теперь www.domain.com/home даст мне домашнюю страницу
Но я также должен иметь дружественный URL для этого
www.domain.com/index.php?p=profile&id=20 to www.domain.com/profile/20/profile-friendly-name or better www.domain.com/profile/profile-friendly-name
* Имя, относящееся к профилю, относится к названию компании
Требования:
Чтобы иметь дружественные URL-адреса для всех страниц, например / home, / contact
Чтобы иметь специальный URL-адрес страницы профиля с именем профиля в URL-адресе
Мои вопросы:
Как я могу добавить имя профиля к URL-адресу с существующим форматом url (index.php? P = profile & id = 20)?
Могу ли я иметь только уникальное имя (без id), как мой последний пример?
Если мне удастся это сделать, мне придется изменить ВСЕ существующие URL-адреса внутри сайта (ссылки, URL-адреса на изображения, файлы) в дружественный формат?
Я заметил, что после применения первого RewriteRule некоторые CSS-таблицы стилей и js не включены. Что не так?
RewriteRule ^profile/([0-9]+)/([A-Za-z0-9-]+)/?$ index.php?p=profile&id=$1
Должен работать:
www.domain.com/index.php?p=profile&id=20 to www.domain.com/profile/20/profile-friendly-name