Нужна помощь по mod_rewrite

123
Shtogrin
На сайте с 02.11.2006
Offline
95
#11

Все приведенные регулярки правильные, у меня работают, так что новых вариантов уже не надо. Что еще есть в .htaccess?

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
IU
На сайте с 21.05.2007
Offline
27
#12

В .htaccess одна единственная регулярка


RewriteEngine On
RewriteBase /
RewriteRule ^name/([a-z]+)/?$ name.php?p=$1 [L,QSA]

Регулярки правильные, дело явно не в них, уже какие только не пробовал. Пробовал писать и без "RewriteBase /" ответ один - "No input file specified".

Результат мне нужен следущие:

Пользователь вводит name/123, mod_rewrite объясняет, что это name.php?p=123, в name.php я продолжаю работать с $_GET['p'].

Быть взрослым значит смотреть на спидометр и понимать, что максимальная скорость твоей машины 210 км/ч, но всё равно ехать со скоростью 60 км/ч (c). Сайт обо всем по чуть-чуть (http://www.ahineya.ru)
Shtogrin
На сайте с 02.11.2006
Offline
95
#13

Лог mod_rewrite вставить можете, есть доступ к httpd.conf? Меня больше всего смущает "No input file specified". Или хотябы что в логе access.log, какой код возврата.

----

name/123 не пройдет, надо name/123/ и ? уберите

IU
На сайте с 21.05.2007
Offline
27
#14

В access.log ничего не пишет, т.к вызываю с локалхоста

в apache.log

[127.0.0.1] - - [02/Sep/2007:13:41:19 +0400] "Get /work/name/123 HTTP/1.1" 500 592

в apache.err ничего про это пишет

Shtogrin
На сайте с 02.11.2006
Offline
95
#15

500 - ошибка сервера

адрес не тот набираете /name/123/

поэтому и нет файла, реврайт не срабатывает

Shtogrin
На сайте с 02.11.2006
Offline
95
#16

И что work такое в /work/name/123. Что то вы пишете здесь одно, а проверяете другое.

IU
На сайте с 21.05.2007
Offline
27
#17

.htacces находитя в папке work, там же где и остальные скрипты

Shtogrin
На сайте с 02.11.2006
Offline
95
#18

.htaccess в work

RewriteEngine On

RewriteRule ^name/(.*)/$ name.php?p=$1 [L,QSA]

И проверяйте запросы

/work/name/123/

или .htaccess в корне

RewriteEngine On

RewriteRule ^name/(.*)/$ /work/name.php?p=$1 [L,QSA]

И проверяйте запросы

/name/123/

Если не работает приведите apache.log.

M
На сайте с 14.01.2007
Offline
6
#19

если ссылка типа http://site.ru/work/news/2/

то строка запроса то остается одной при любом случае

так что скорее

RewriteRule ^work/(.*)/$ name.php?p=$1 [L,QSA]

IU
На сайте с 21.05.2007
Offline
27
#20

Shtogrin, написал как вы сказали

Запрос http://www.mysite.com/work/name/123/

No input file specified

apache.log

"GET /work/name/123/ HTTP/1.1" 404 37

Запрос http://www.mysite.com/work/name/

"GET /work/name/ HTTP/1.1" 200 5

ессно, работает в этом случае

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий