Сергей Л.
616 сообщений
#14 лет назад
Проблема при переносе сайта, на старом хостинге все отлично работает, перенес на новый все настроил, файлы подправил какие нужно было, только вот в htacces в rewriterule что то не так обрабатывается
/home/a/amargoev/kidsobuv.ru/public_html/.htaccess: RewriteRule: cannot compile regular expression '^admin/addpage(|/)$'\n - вот это в логе ошибок
Антон С.
1316 сообщений
#14 лет назад
А раньше за такое деньги платили...
Артём К.
1157 сообщений
#14 лет назад
Цитата ("viprub4ik"):
RewriteRule: cannot compile regular expression '^admin/addpage(|/)$'\n - вот это в логе ошибок


По каким-то причинам регулярные выражения в mod rewrite работают не на всех хостингах.
Варианты решения
- быстро сбежать, пока никто не видел
- дать на лапу админу чтоб как-нибудь у вас заработало
- заменить вариант с регуляркой на вариант с более понятным и простым выражением без регулярки


(|/) - вот это в упор не понимаю, что сие означает
Роман В.
99 сообщений
#14 лет назад
Поправить на
^admin/addpage/?$

помогает?
Роман В.
99 сообщений
#14 лет назад
superkoder, наверное, логика "или" руглярки. (|/) - выбор группы, "ничего" или "слеш"
Артём К.
1157 сообщений
#14 лет назад
Цитата ("r0b1n"):
"ничего" или "слеш"


"ничего" или "слеш" пишут так /?

(|/) | означает элемент на выбор, / - сам себя? Не очевидная конструкция.
Роман В.
99 сообщений
#14 лет назад
superkoder, /? - это слеш повторяющийся ноль или один раз. другая запись - /{0,1}
ка(ш|в)а
поймает и каша , и кава,
(С|М)аша
поймает и Саша, и Маша
И наверное, логика программиста была что записью page(нет_тут_ничего|/) поймается и pageнет_тут_ничего, и page/
Сергей Л.
616 сообщений
#14 лет назад
Всем спасибо, тоже не мог разобрать (|/) зачем вот это, убрал и вот что получилось и все работает смотрите ниже!
Сергей Л.
616 сообщений
#14 лет назад
PS Сайт не известно кем написан был, мне его нужно было перенести на другой хостинг... вот решение
Было
RewriteRule ^admin/addpage(|/)$ /admin/addpages.php
RewriteRule ^admin/editpage/(+)(|/)$ /admin/editpages.php?page_id=$1
Стало
RewriteRule ^admin/addpage/$ /admin/addpages.php
RewriteRule ^admin/editpage/(+)/$ /admin/editpages.php?page_id=$1
Мож кому пригодится