Сергей Л.
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
Мож кому пригодится