DLE правила .htaccess

12 3
wasistdas
На сайте с 02.12.2005
Offline
207
2430

Сайт стоял на хостинге, где рут хостинга был отнсительно прописан как /

Сейчас сайт стал на хостинг, где рут приходится прописывать как /mysite/

В это раскладе при обращении клюбым страницам, отличным от первой, выбрасывается ошибка 404 "The requested URL /mysite/index.php was not found on this server".

Где покрутить? Спасибо.

Продается домен под сайт об Испании (http://www.ispania.org).
siv1987
На сайте с 02.04.2009
Offline
427
#1

Что-то не очень понятно, рут у вас прописан относительно /mysite/, при обращение к mysite/index.php выскакивает ошибка 404. а где же тогда находится сайт?

Как вариант

RewriteBase /mysite/

или наоборот удалите его

wasistdas
На сайте с 02.12.2005
Offline
207
#2

Раньше сайт был относительно рута сервера в /

Теперь в эккаунте рут под мастер-доменом, а все сайты в поддиректориях мастер-домена, типа так:

/mysite/site1.com/

/mysite/site2.com/

/mysite/site3.ru/

siv1987
На сайте с 02.04.2009
Offline
427
#3

Манипуляции выше с rewriteBase пробовали проделывать?

По идее реврайты должны делаться относительно текущей папки где находится htaccess с инструкциями.

RewriteBase /site1.com/

wasistdas
На сайте с 02.12.2005
Offline
207
#4

Попробовал, не сработало :-( Тут надо или в правилах .htaccesse прописать сервер рут вместо / /site/ или как-то еще. Не люблю DLE из-за наврорченных правил рерайтинга :-(

Мне надо ДЛЕ как-то показать, что для нее абсолютный сервер рут / это мой относительный /site/

siv1987
На сайте с 02.04.2009
Offline
427
#5

Если у вас сайт находится в /mysite/site.ru/

а реврайты обращаются к /mysite/index.php

попробуйте прописать RewriteBase /site.ru/

или совсем в лоб, весь substitution (подстановка) index.php? сменить на site.ru/index.php?

Сделайте сначала тестовый, не торопитесь изменять весь htaccess.

Старый забэкапте, и создайте новый с такими правилами

RewriteEngine On

RewriteBase /site.ru/

RewriteRule (.*) index.php? [L]

Поиграйтесь с правилами пока не заработает

wasistdas
На сайте с 02.12.2005
Offline
207
#6

Попробовал это. Не помогло :-( Продолжает выдавать ту же 404 ошибку

siv1987
На сайте с 02.04.2009
Offline
427
#7

Тогда остается

RewriteEngine On

RewriteRule (.*) /site.ru/index.php [L]

вообще без rewriteBase

siv1987:
реврайты должны делаться относительно текущей папки где находится htaccess с инструкциями.
wasistdas
На сайте с 02.12.2005
Offline
207
#8

И это не помогло :-( На этот раз "Internal Server Error"

---------- Добавлено 18.03.2012 в 15:47 ----------

Так, нашел логику этого идиотизма ДЛЕ:

поскольку мастер домен имеет рут /

а домен с сайтом рут /site/

то идиотский .htaccess фактически лезет искать index.php по абсолютному адресу /site/site/index.php вместо того, чтобы брать его из /site/index.php

Вот как с этим маразмом бороться?

siv1987
На сайте с 02.04.2009
Offline
427
#9
wasistdas:
Так, нашел логику этого идиотизма ДЛЕ:

Нет, мне кажется он все же ищет файл в корень ROOT.

wasistdas:
И это не помогло :-( На этот раз "Internal Server Error"

А так

RewriteRule ^site.ru/ - [L]

RewriteRule (.*) /site.ru/index.php [L]

wasistdas
На сайте с 02.12.2005
Offline
207
#10

А вот теперь такая же ошибка 404

The requested URL /site.ru/index.php was not found on this server.

только теперь уже и на index.php

12 3

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