DiAksID: 1. например: RewriteRule ^([a-z0-9]+) news.php?page=$1 -редиректит только адреса начинающиеся с алфавитно-цифрового названия и БЕЗ СУФФИКСА Regex
2. даже если п. 1 верен второй редирект на news.php?page=$1 не сработает как Вы ожидаете (он сработает как чистый RewriteRule), потому как до него по условию УЖЕ ВСЕ несуществующие адреса редиректнулись на index.php?page=$1. т .е.: если два редиректа - должно быть два условия.
делите условие на два (видимо, добавив к первому какое-нибудь RewriteCond %{REQUEST_URI}) и к каждому по редиректу
Если можете, запишите на примере как разделить и добавить? Новичку, как я, это сразу не дается.
Str256, Почему со ссылкой на источник нарушение? ведь кажется в сети это только поощряется...
Какие можно использовать? малоизвестные с малым тиражом или может устаревшие с советских времен? от чего зависит?
mersi, это не форум для юристов...
А как же слухи о том, что не все ссылки в меню могут проиндексироватся?
Paceholder не работает у меня.
Все что я пока сделал - это удалил строку <input type="submit"....остается только ввод....и при этом Enter срабатывает как надо.
А IE надо учитывать только потому, что очень многие им пользуются.
Последний код работает, просто нужно было ссылки нормально вписать (img src="/....) со слэшом.
И потом я чуть модернизировал код:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?page=$1 [L]
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^news/([a-z0-9]+)$ news.php?id=$1 [L]
RewriteRule ^news/([a-z0-9]+)/$ news.php?id=$1 [L]
Может еще необходимо что-то добавить...
Какой самое оптимальное решение будет в моем случае, какой код?
Последний код действительно не подходит. Оно вроде бы работает, но при news/ картинки теряются, с адресацией в папку images/ проблема.
Отличие в том, что хочу получить:
http://site.ru/1... - для index
http://site.ru/news/1.... - для news
Файлы index.php и news.php находятся в одной папке www на сервере.
Не понял как заполнить эту строку:
RewriteCond %{REQUEST_URI} какая_то_регулярка_для_выборки_по_адресу
А без этой строки работает только первый скрипт.
1. например: RewriteRule ^([a-z0-9]+) news.php?page=$1 -редиректит только адреса начинающиеся с алфавитно-цифрового названия и БЕЗ СУФФИКСА Regex
2. даже если п. 1 верен второй редирект на news.php?page=$1 не сработает как Вы ожидаете (он сработает как чистый RewriteRule), потому как до него по условию УЖЕ ВСЕ несуществующие адреса редиректнулись на index.php?page=$1. т .е.: если два редиректа - должно быть два условия.
делите условие на два (видимо, добавив к первому какое-нибудь RewriteCond %{REQUEST_URI}) и к каждому по редиректу
Если можете, запишите на примере как разделить и добавить? Новичку, как я, это сразу не дается.