Так, я понял, надо еще объяснить задачу ...
всё очень просто.
Как лежат сайты относительно web корня, то есть (url запросов):
http://192.168.0.1/_site/{сайт1}/
http://192.168.0.1/_site/{сайт2}/
http://192.168.0.1/_site/{сайт3}/
http://192.168.0.1/ - тут тоже лежит свой сайт заглушка, с index.php и htaccess
доступ к сайту1, идет по запросу: http://192.168.0.1/_site/{сайт1}/
доступ к сайту2, идет по запросу: http://192.168.0.1/_site/{сайт2}/
сейчас у каждого из сайт1 и сайт2, я создаю htaccess в котором прописываю:
RewriteRule ^(.*)/sitemap.xml$ http://%{HTTP_HOST}/www/girl4relax.ru/sitemap.xml [R=301,L]
RewriteCond %{ENV:HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^sitemap.xml$ /_site/{сайтN}/sitemap.php [L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(jpg|gif|png|jpe|jpeg)$
RewriteRule . /_site/{сайтN}/index.php [L]
где {сайтN} - это сайт1, сайт2 итд - доменные имена сайтов.
тут и sitemap.xml надо получать, и на index.php запрос завернуть
вот и думается мне, что есть наверное какое-то универсальное решение htaccess, что-б к {сайтN} - не привязываться и все работало
это не работает, сайт же лежит в /_site/{сайт1}/....
если прописать как выше указали, то пойдет запрос в /index.php а не /_site/{сайт1}/index.php
это как? пример можно
а что за ошибка то, что-б понять
в целом от 3х дней и до хз скольки, как индексироваться будет.
очень помогает страницы на переобход отправлять такие
полную картинку ставить - это жесть =)
тут скан сайта как-бы, ссылки то реально есть. просто думаю есть методы их убрать, по факту это пустые хвосты и потеря PR если он вообще учитывает эти моменты
да меня просто что-то смущает наличие записей в яндекс вебмастере, вида:
.../wp-content/images/232423.jpg {не поддерживамый формат}
это когда он по ссылкам ходит
RewriteCond %{DOCUMENT_ROOT}/site.%{HTTP_HOST}/$0 -f RewriteRule ^.+\.(css|js|jpe?g|mp4|gif)$ /site.%{HTTP_HOST}/$0 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^ index.php [L]
благодарю, это правило короче и понятнее, чем я нагромоздил.
СПАСИБО ВСЕ ОГРОМНОЕ, порешали вопрос !
так, задачу вроде как решил.
вот правила что получились
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_URI} \.(css|js|jpe?g|mp4|gif) [NC]
RewriteCond %{REQUEST_URI} !^(\/site\.) [NC]
RewriteCond /site.%{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ /site.%{HTTP_HOST}/$0 [L]
RewriteRule ^(.*)$ index.php [L]
</IfModule>
вроде как работает, хостинг тупит по страшному, почему-то цепляет жутко старые правила где редиректы были, хз как там htaccess обновить что-б сервер их перечитал ... но на других хостах все работает
так, написал такое пока что...
RewriteRule ^(.*)$ /site.%{HTTP_HOST}/$0 [R=302,L]
делаю запрос:
http://vasya.ru/content/images/484/2605s.jpg
идет переадресация на http://vasya.ru/site.vasya.ru/wp-content/images/484/2605s.jpg
и все норм ... но мне надо проверить на существование этого файла.
а когда делаю:
RewriteCond /site.%{HTTP_HOST}%{REQUEST_URI} -f
уже не работает правило, почему-то тут не корректно :/ хотя файл существует и как-бы все должно быть норм
подскажите с этим?