| Autor | Zpráva | ||
|---|---|---|---|
| bartn Profil |
#1 · Zasláno: 23. 5. 2014, 11:27:12
Čau, mám někde chybu v htaccess a nevidím kde? Stránky běží, ale nejsou indexovaný roboty, robot zůstane ve smyčce a odejde. Může někdo pomoc?
RewriteEngine On
Options +FollowSymlinks
RewriteCond %{HTTP_HOST} ^domena.com[nc]
RewriteRule ^(.*)$ http://www.domena.com/$1 [L,R=302,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.+)\.php$ http://%{HTTP_HOST}/$1 [L,R=302,NE]
RewriteRule ^cs/(.*)$ $1?lang=cs [QSA]
RewriteRule ^en/(.*)$ $1?lang=en [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] |
||
| Kajman Profil |
#2 · Zasláno: 23. 5. 2014, 12:23:19
bartn:
„robot zůstane ve smyčce a odejde“ To jste poznal z logů nebo jak? Zběžně totiž pravidla nevypadají na problém s cyklením. Můžete si ale přidat mezeru před hranatou závorku na třetím řádku. |
||
| bartn Profil |
#3 · Zasláno: 23. 5. 2014, 13:20:29
Že zůstane ve smyčce jsem zjistil u technické podpory na seznam.cz, ale více mi nechtěli pomoc.
|
||
| Kajman Profil |
#4 · Zasláno: 23. 5. 2014, 15:15:38
Pokud je tam opravdu smyčka přesměrování, tak nejspíše budou i nějaká další přesměrování (v konfiguraci apache, v php kódu).
Smyčku by měl odhalit i prohlížeč nebo robot na stahování (wget, httrack). Případně se mrkněte do access logu apache na přístupy seznambota a stavem odpovědí 30x. |
||
| Davex Profil |
#5 · Zasláno: 23. 5. 2014, 20:54:22
bartn:
Máš tam chybu v PHP. Po nastavení session přesměrováváš na tu samou stránku a pokud klient nepodporuje cookies, tak se URL přesměrovává stále samo na sebe. |
||
| bartn Profil |
#6 · Zasláno: 25. 5. 2014, 16:16:58
buď koukám jinam, nebo to prostě nevidí
.... /**
* Class Core
*
* Main class of this application.
*/
class Application {
private static $instance = null;
/**
* Constructor Core class
*/
private function __construct() {
}
public function run(){
try {
$registry = array();
# Get session from database
$session = Session::get_instance();
# Session start
$session->start_session();
# Get session from database
$session->get_session(session_id());
$registry['database'] = Database::get_instance();
# Check redirect
$current_url = Router::get_current_url();
Redirect::check_redirect($current_url, $registry, true);
# Router Class and url paramters
$router = Router::get_instance();
$registry['router'] = $router;
# Set language
$lang = $this->load_language($registry);
$registry['lang'] = $lang;
$registry['date_format'] = 'd.m.Y h:m:s';
$registry['date_format_2'] = 'd.m.Y';
$database_cache = Database_Cache::get_instance();
$database_cache->set_registry($registry);
$router->set_language($lang);
# Set application settings
$this->load_application_settings($registry);
# Set application definitions
$this->load_application_definitions($registry);
# Set cache and get Code
$cache_manager = Cache::get_instance($registry);
$web_page_code = $cache_manager->start_cache();
if($web_page_code[0]){
if($router->is_admin()){
# Create url map of all pages
$router->set_urls(false);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
$registry['templates_dir'] = G_ADMIN_TEMPLATES_DIR;
$registry['modules_dir'] = G_ADMIN_MODULES_DIR;
} else {
# Create url map of all pages
$router->set_urls(false);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
$registry['templates_dir'] = G_TEMPLATES_DIR;
$registry['modules_dir'] = G_MODULES_DIR;
}
require 'controllers/cache_page_controller.php';
$controller = new Page_Controller($registry);
$data = $controller->index($web_page_code[1]);
} else {
# Set default controller
# Using for every pages on web
if($router->is_admin()){
# Create url map of all admin pages
$router->set_urls(true);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
# Set paths
$registry['templates_dir'] = G_ADMIN_TEMPLATES_DIR;
$registry['modules_dir'] = G_ADMIN_MODULES_DIR;
# Load admin page controller
require 'controllers/admin_page_controller.php';
$controller = new Page_Controller($registry);
$data = $controller->index();
} else {
# Create url map of all pages
$router->set_urls(false);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
# Set paths
$registry['templates_dir'] = G_TEMPLATES_DIR;
$registry['modules_dir'] = G_MODULES_DIR;
# Load admin page controller
require 'controllers/page_controller.php';
$controller = new Page_Controller($registry);
$data = $controller->index();
}
}
$cache_manager->end_cache();
$session->update_session(session_id());
## Fatal error
} catch (Database_Exception $e){
# Router Class and url paramters
$router = Router::get_instance();
$registry['router'] = $router;
if(isSet($controller))
unset($controller);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
$registry['templates_dir'] = G_TEMPLATES_DIR;
$registry['modules_dir'] = G_MODULES_DIR;
# Load controller
require 'controllers/error_controller.php';
$controller = new Error_Controller($registry);
$data = $controller->index($e);
## Error 404 - wrong url
} catch (Exception $e) {
if(isSet($controller))
unset($controller);
# Create user instance
$registry['user'] = User::get_instance($lang, $registry);
$registry['templates_dir'] = G_TEMPLATES_DIR;
$registry['modules_dir'] = G_MODULES_DIR;
# Load controller
require 'controllers/error_404_controller.php';
$controller = new Error_Controller($registry);
$data = $controller->index($e);
}
unset($session);
# Delete created controller
unset($controller);
}
public function load_application_definitions($registry){
if(!defined('APP_DEBUG') || APP_DEBUG == 0)
Model::load('system_translation_model', $registry)->set_definitions($registry['lang'], '%', $registry['router']->is_admin());
}
function load_application_settings(&$registry){
$registry['web_settings'] = Model::load('system_setting_model', $registry)->get_settings();
}
/**
* Load main language file by paramter in URL
*
* @param array $router
*/
function load_language($registry){
# Load language core class
require_once 'core/core_language.php';
# Create language core class object
$language = Language::get_instance($registry['router']->get_url_params(), $registry);
# Get currently selected language
$lang = $language->get_current_language();
if(defined('APP_DEBUG') && APP_DEBUG == 1) {
# Include language file
if(file_exists(G_DIR_LANG . $lang . '.php')){
require_once G_DIR_LANG . $lang . '.php';
}
else if(file_exists(G_DIR_LANG . G_DEFAULT_LNG . '.php')){
require_once G_DIR_LANG . G_DEFAULT_LNG . '.php';
}
}
return $lang;
}
/**
* Create new instance of this class or return old instance
*
* @return class instance
*/
public static function get_instance()
{
if(self::$instance == false) {
self::$instance = new Application();
}
return self::$instance;
}
public function loadSettings(){
}
}
?> |
||
| Davex Profil |
#7 · Zasláno: 25. 5. 2014, 17:14:39
Tipnul bych to na ten 35. řádek.
|
||
|
Časová prodleva: 12 let
|
|||
0