люди, помогите разобраться...
.htaccess находится в корневой папке. его содержание:
Options +FollowSymLinks
RewriteEngine On
###php_flag display_errors off
###php_flag display_startup_errors off
RewriteRule ^mysite.com/(.*)/(.*)$ /view.php?id=$1&name=$2
при переходе по ссылке такого вида:
http://www.mysite.com/1234567890/vasya-pupkin
сервер выдает ошибку 404.
в чем может быть проблема? хостинг говорит что у них все ок с настройками.
и похожий RewriteRule у меня стоит на другом сайте и там все ок.
Спустя 16 минут, 31 секунда (15.12.2011 - 21:08) Winston написал(а):
Не пробовал так писать ?
RewriteBase /
RewriteRule ^(.*)/(.*)/?$ http://mysite.com//view.php?id=$1&name=$2 [L,QSA]
Цитата (MatrixGod @ 15.12.2011 - 19:51) |
супер срочно! |
Улыбнуло :)
Спустя 4 минуты, 26 секунд (15.12.2011 - 21:12) ZSH написал(а):
Цитата |
RewriteRule ^mysite.com/(.*)/(.*)$ /view.php?id=$1&name=$2 |
Цитата |
http://www.mysite.com/1234567890/vasya-pupkin |
может из-за www в адресе?
Спустя 4 минуты, 34 секунды (15.12.2011 - 21:17) ems написал(а):
это из-за пхп. если он установлен в ручную то флаги нужно прописывать в php.ini
а нет там 500 ошибка. не ручаюсь за свои слова =)
а нет там 500 ошибка. не ручаюсь за свои слова =)
Спустя 51 минута, 41 секунда (15.12.2011 - 22:08) MatrixGod написал(а):
всем спасибо, разобрался!
теперь вопрос такой, можно как-то ограничивать RewriteRule?
тоесть, у меня станицы вида:
и все картинки сохранены в:
таким образом, когда я обращаюсь к картинке, скажем:
он ей тоже делает RewriteRule так как путь как раз совпадает с условием.
и скорей всего получается типа (потому что картинки все пропали):
как исправить?
теперь вопрос такой, можно как-то ограничивать RewriteRule?
тоесть, у меня станицы вида:
http://www.mysite.com/1234567890/vasya-pupkin/
и все картинки сохранены в:
http://www.mysite.com/images/
таким образом, когда я обращаюсь к картинке, скажем:
http://www.mysite.com/images/logo.jpg/
он ей тоже делает RewriteRule так как путь как раз совпадает с условием.
и скорей всего получается типа (потому что картинки все пропали):
http://www.mysite.com/view.php?id=images&name=logo.jpg/
как исправить?
Спустя 7 минут, 32 секунды (15.12.2011 - 22:16) Xes написал(а):
Мой мозг думает так надо:
А почему у тя заработоло, воброс вобщемто не к тебе кнечно,а в аудиторию вдеь
(.*) захавает всю строку вместе со слешем разделяющим категории?
RewriteBase /
RewriteRule ^([^/]+)/(.+)$ view.php?id=$1&name=$2
А почему у тя заработоло, воброс вобщемто не к тебе кнечно,а в аудиторию вдеь
(.*) захавает всю строку вместе со слешем разделяющим категории?
Спустя 9 минут, 48 секунд (15.12.2011 - 22:26) Xes написал(а):
MatrixGod, тут надо все договаривать и сразу т.к. mod_rewrite еще та штука.
Важна каждая галочка и каждый слеш.
Конкретно под то что ты сказал я вижу так:
И еще MatrixGod надо писать как можно уже правила
так если так писать не надо. Вопервых мозг грется разбирать эти случаи во вторых лишние запросы к базе с id = пустая строка никчему.
RewriteRule ^([0-9]*)/([a-z0-9-]*)/$ view.php?id=$1&name=$2 [L]
Важна каждая галочка и каждый слеш.
Конкретно под то что ты сказал я вижу так:
RewriteBase /
RewriteRule ^([0-9]+)/([a-z0-9-]+)/$ view.php?id=$1&name=$2 [L]
И еще MatrixGod надо писать как можно уже правила
так если так писать не надо. Вопервых мозг грется разбирать эти случаи во вторых лишние запросы к базе с id = пустая строка никчему.
RewriteRule ^([0-9]*)/([a-z0-9-]*)/$ view.php?id=$1&name=$2 [L]
Спустя 39 минут, 54 секунды (15.12.2011 - 23:06) ZSH написал(а):
1 вариант. В папку images положить файл .htaccess
2 вариант. В основном .htaccess перед RewriteRule вставить строку:
(\.js|\.css|\.gif|\.png|\.jpg|\.jpeg|\.ico|\.swf|\.mid) - список расширений файлов к которым не производить переход на index.
3 вариант. В основном .htaccess перед RewriteRule вставить :
если не найдена директория или файл тогда переход на index
RewriteEngine off
2 вариант. В основном .htaccess перед RewriteRule вставить строку:
RewriteCond %{REQUEST_URI} !(\.js|\.css|\.gif|\.png|\.jpg|\.jpeg|\.ico|\.swf|\.mid)$
(\.js|\.css|\.gif|\.png|\.jpg|\.jpeg|\.ico|\.swf|\.mid) - список расширений файлов к которым не производить переход на index.
3 вариант. В основном .htaccess перед RewriteRule вставить :
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
если не найдена директория или файл тогда переход на index
Спустя 11 минут, 14 секунд (15.12.2011 - 23:17) Winston написал(а):
MatrixGod используй 3-й вариант ZSH'a, для решения этой проблемы.