Jump to content

браузеры верно видят только с /index.php


WalterG
 Share

Recommended Posts

На субдомене установлены движки os Commerce , а затем и dle, браузеры видят их только если после адреса прописано имя файла /index.php (или /install.php, например), иначе пишут ошибку 404 - "The requested URL /home/bestsafa/domains/bestsafari.org/public_html/index.php was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request."

Как видно, они пытаются найти его не по прописанному в браузере адресу public_html/sub.domain/ , а в public_html/ , где его, естественно нет

Через некоторое время, а скорее всего после установки аналогичного движка на другой субдомен сайта, на этом субдомене стало вс? узнаваться-находиться, проблема снялась. Но та же проблема возникла теперь на новом субдомене со вновь устанвленным движком.

В ч?м причины и как быть?

Link to comment
Share on other sites

1. Файл .htaccess директории public_html/ :

 DirectoryIndex index.php

RewriteEngine On

# Редиректы
RewriteRule ^page/(.*)$ index.php?cstart=$1 [L]
# Сам пост
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*).html(/?)+$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4 [L]
# За день
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2&day=$3 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&day=$3&cstart=$4 [L]
# За весь месяц
RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&cstart=$3 [L]
# Вывод за весь год
RewriteRule ^([0-9]{4})(/?)+$ index.php?year=$1 [L]
RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ index.php?year=$1&cstart=$2 [L]
# вывод для отдельного юзера
RewriteRule ^user/([^/]*)(/?)+$ index.php?subaction=userinfo&user=$1 [L]
RewriteRule ^user/([^/]*)/page/([0-9]+)(/?)+$ index.php?subaction=userinfo&user=$1&cstart=$2 [L]
# вывод в виде каталога
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]
# вывод непрочитанных статей
RewriteRule ^newposts(/?)+$ index.php?subaction=newposts [L]
RewriteRule ^newposts/page/([0-9]+)(/?)+$ index.php?subaction=newposts&cstart=$1 [L]
# Статистические страницы
RewriteRule ^static/(.*).html(/?)+$ index.php?do=static&page=$1 [L]
# вывод избранных статей
RewriteRule ^favorites(/?)+$ index.php?do=favorites [L]
RewriteRule ^favorites/page/([0-9]+)(/?)+$ index.php?do=favorites&cstart=$1 [L]

RewriteRule ^statistics.html$ index.php?do=stats [L]
RewriteRule ^addnews.html$ index.php?do=addnews [L]
RewriteRule ^rss.xml$ engine/rss.php [L]
RewriteRule ^sitemap.xml$ uploads/sitemap.xml [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L]
RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^<]+)/rss.xml$ engine/rss.php?do=cat&category=$1 [L]
RewriteRule ^page,([0-9]+),([^/]+).html$ index.php?do=static&page=$2&news_page=$1 [L]
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1 [L]

2. Этот файл физически существует, вот он:

<?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
—————————————————--
http://dle-news.ru/
—————————————————--
Copyright (c) 2004,2007 SoftNews Media Group
=====================================================
Данный код защищен авторскими правами
=====================================================
Файл: index.php
—————————————————--
Назначение: Главная страница
=====================================================
*/
@session_start();
@ob_start();
@ob_implicit_flush(0);

@error_reporting(E_ALL ^ E_NOTICE);
@ini_set('display_errors', true);
@ini_set('html_errors', false);
@ini_set('error_reporting', E_ALL ^ E_NOTICE);

define('DATALIFEENGINE', true);

$member_id = FALSE;
$is_logged = FALSE;

define('ROOT_DIR', dirname (__FILE__));
define('ENGINE_DIR', ROOT_DIR.'/engine');

require_once ROOT_DIR.'/engine/init.php';

$tpl->load_template('main.tpl');

$tpl->set('{calendar}', $tpl->result['calendar']);
$tpl->set('{archives}', $tpl->result['archive']);
$tpl->set('{vote}', $tpl->result['vote']);
$tpl->set('{topnews}',$topnews);
$tpl->set('{login}',$login_panel);
$tpl->set('{info}', "<span id='dle-info'>".$tpl->result['info']."</span>");
$tpl->set('{speedbar}', $tpl->result['speedbar']);
$tpl->set('{guestinfo}', $tpl->result['guestinfo']);

if ($config['allow_skin_change'] == "yes" AND stristr( $tpl->copy_template, "{changeskin}" ))
$tpl->set('{changeskin}', ChangeSkin (ROOT_DIR.'/templates', $config['skin']));

if (count($banners) AND $config['allow_banner']) {

foreach ($banners as $name => $value) {
$tpl->copy_template = str_replace("{banner_".$name."}",$value, $tpl->copy_template);
}

}

$tpl->set_block("'{banner_(.*?)}'si","");

if (count($informers) AND $config['rss_informer']) {
foreach ($informers as $name => $value) {
$tpl->copy_template = str_replace("{inform_".$name."}",$value, $tpl->copy_template);
}}

if ($do=="") $do = $subaction;
if ($do=="" AND $year) $do = "date";

if ( stristr( $tpl->copy_template, "[aviable=" ) ) {
$tpl->copy_template = preg_replace( "#[aviable=(.+?)](.*?)[/aviable]#ies","check_module('1', '2', '{$do}')", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "[not-aviable=" ) ) {
$tpl->copy_template = preg_replace( "#[not-aviable=(.+?)](.*?)[/not-aviable]#ies","check_module('1', '2', '{$do}', false)", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "[not-group=" ) ) {
$tpl->copy_template = preg_replace( "#[not-group=(.+?)](.*?)[/not-group]#ies","check_group('1', '2', false)", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "[group=" ) ) {
$tpl->copy_template = preg_replace( "#[group=(.+?)](.*?)[/group]#ies","check_group('1', '2')", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "[category=" ) ) {
$tpl->copy_template = preg_replace( "#[category=(.+?)](.*?)[/category]#ies","check_category('1', '2', '{$category_id}')", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "[not-category=" ) ) {
$tpl->copy_template = preg_replace( "#[not-category=(.+?)](.*?)[/not-category]#ies","check_category('1', '2', '{$category_id}', false)", $tpl->copy_template);
}

if ( stristr( $tpl->copy_template, "{custom" ) ) {

$tpl->copy_template = preg_replace( "#{custom category=['"](.+?)['"] template=['"](.+?)['"] aviable=['"](.+?)['"] from=['"](.+?)['"] limit=['"](.+?)['"] cache=['"](.+?)['"]}#ies", "custom_print('1', '2', '3', '4', '5', '6', '{$do}')", $tpl->copy_template );

}

$config['http_home_url'] = reset(explode("index.php", $_SERVER['PHP_SELF']));
if (!$user_group[$member_id['user_group']]['allow_admin']) $config['admin_path'] = "";

$ajax .= <<<HTML
<script language="javascript" type="text/javascript">
<!--
var dle_root = '{$config['http_home_url']}';
var dle_admin = '{$config['admin_path']}';
var dle_skin = '{$config['skin']}';
var dle_wysiwyg = '{$config['allow_comments_wysiwyg']}';
var menu_short = '{$lang['menu_short']}';
var menu_full = '{$lang['menu_full']}';
var menu_profile = '{$lang['menu_profile']}';
var menu_fcomments = '{$lang['menu_fcomments']}';
var menu_send = '{$lang['menu_send']}';
var menu_uedit = '{$lang['menu_uedit']}';
var dle_req_field = '{$lang['comm_req_f']}';
var dle_del_agree = '{$lang['news_delcom']}';

//-->
</script>
<script type="text/javascript" src="{$config['http_home_url']}engine/ajax/menu.js"></script>
<script type="text/javascript" src="{$config['http_home_url']}engine/ajax/dle_ajax.js"></script>
<div id="loading-layer" style="display:none;font-family: Verdana;font-size: 11px;width:200px;height:50px;background:#FFF;padding:10px;text-align:center;border:1px solid #000"><div style="font-weight:bold" id="loading-layer-text">{$lang['ajax_info']}</div>
<img src="{$config['http_home_url']}engine/ajax/loading.gif" border="0" alt="" /></div>
<div id="busy_layer" style="visibility: hidden; display: block; position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; background-color: gray; opacity: 0.1; filter: alpha(opacity=10); "></div>
{$pm_alert}
<script type="text/javascript" src="{$config['http_home_url']}engine/ajax/js_edit.js"></script>
HTML;

$tpl->set('{AJAX}', $ajax);
$tpl->set('{headers}', $metatags);

$tpl->set('{content}', "<div id='dle-content'>".$tpl->result['content']."</div>");
$tpl->set('{THEME}', $config['http_home_url'].'templates/'.$config['skin']);


$tpl->compile('main');

echo $tpl->result['main'];
$tpl->global_clear();
$db->close();

echo"n<!-- DataLife Engine Copyright SoftNews Media Group (http://dle-news.ru) -->rn";

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Вывод сгенерированного контекта
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
GzipOut();
?>

В директории /shop.bestsafari.org/ файла .htaccess нет

Link to comment
Share on other sites

Как часто бывает в таких случаях, решение лежало на поверхности, споткнулся на невнимательности...

В самом начале попробовал вариант положить в директорию /sub.domain/ файл .htaccess с RewriteEngine Off, но не получилось, поскольку по невнимательности написал Rewrite Engine раздельно :)

Когда обсуждал проблему на форуме сайте автора движка DLE, сразу вв?л всех в заблуждение, сказав, что такой вариант не работает, заведя дискуссию в тупик.

Помогла техподдержка хостера, которая исправила мою описку. Как второй вариант решения проблемы предложено расположить субдомен как домен, в собственном каталоге (хостинг позоволяет бесплатно до определ?нных пределов), что позволило бы включить RewriteEngine (пока решил оставить вс? как есть).

Всем спасибо за внимание и терпение.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy