User Tools

Site Tools


ru:troubleshooting

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ru:troubleshooting [2020/01/05 18:22] – [Wrong skimming, wrong redirect, out does not work] adminru:troubleshooting [2025/10/01 13:33] (current) – [How to view HTTP headers] admin
Line 2: Line 2:
  
 ===== It doesn't work ! ===== ===== It doesn't work ! =====
 +
  
 Я рад вам помочь, но в 95% случае начинается все с одного и того же: вопроса что именно не работает и как именно не работает. Поэтому дабы ускорить тот процесс, пожалуйста, сделайте следующее: Я рад вам помочь, но в 95% случае начинается все с одного и того же: вопроса что именно не работает и как именно не работает. Поэтому дабы ускорить тот процесс, пожалуйста, сделайте следующее:
Line 11: Line 12:
   * Если считаете что этого не достаточно - опишите что вы ожидали увидеть   * Если считаете что этого не достаточно - опишите что вы ожидали увидеть
  
-Заранее спасибо! чем больше информации - тем быстрее и качественее будет помощь :)+Заранее спасибо! чем больше информации - тем быстрее и качественнее будет помощь :)
  
 ===== Page does not show ===== ===== Page does not show =====
  
-не показывается, белая страница и тп - значит в php.ini выключен вывод ошибок. По белому экрану я так же не могу опредлить в чем именно проблема. Надо выключить вывод ошибок и посмотреть что именно пишет.+не показывается, белая страница и тп - значит в php.ini выключен вывод ошибок. По белому экрану я так же не могу определить в чем именно проблема. Надо выключить вывод ошибок и посмотреть что именно пишет.
  
  
 +===== Test template =====
 +
 +Обычно в темплейте куча тагов, html, js, картинки и тп , в итоге в этом сложно разобраться.
 +
 +Если что-то не работает то надо сделать тестовый темплейт где будет ТОЛЬКО то что не работает. Те НЕ будет html, js, картинок и прочего.
 +
 +например, вы думаете что не работает таг <!--ALT-->? делаем темпелйт
 +
 +<code>
 +<thumb num=1-10>
 +<!--GALLERY_ID--> : <!--ALT--> <br>
 +</thumb>
 +</code>
 +
 +Все, ничего лишнего, легко понять для какой галеры не выводит альт и решить проблему.
 ===== Does not count traffic ===== ===== Does not count traffic =====
  
Line 28: Line 44:
  
  
-2. При использовании инклуда  +2. Если вы используете index.php Смарта убедитель, что в том же каталоге нет других index файлов, например index.html.
-  <!--#include virtual=”/scj/cgi/include.php”-->  +
- +
-Если вы загружаете в браузере страницу сиджа, а этот код остается неизменным - значит у вас не включена поддержка SSI. Обратительсь к админу. +
- +
-3. Если вы используете index.php Смарта убедитель, что в том же каталоге нет других index файлов, например index.html.+
 В зависимости от настроек сервера по умолчанию при запросе урла  В зависимости от настроек сервера по умолчанию при запросе урла 
   http://domain.com/    http://domain.com/ 
Line 49: Line 60:
 Итак, для того что бы посмотреть куда вас редиректит скрипт надо посмотреть хедеры. Это делается следующим образом (вариантов много, но мне кажется данный наиболее простой и требующий минимальных усилий): Итак, для того что бы посмотреть куда вас редиректит скрипт надо посмотреть хедеры. Это делается следующим образом (вариантов много, но мне кажется данный наиболее простой и требующий минимальных усилий):
   - В settings - other включить out.php debug (Yes) (ждем минуту)   - В settings - other включить out.php debug (Yes) (ждем минуту)
 +  - поставить Cookie Engine = Regular cookie 
   - Если у вас еще не установлен, то скачать и установить FireFox    - Если у вас еще не установлен, то скачать и установить FireFox 
   - Нажать Инструменты-Дополнения (Tools-addons), оттуда перейти на сайт аддонов для ФФ и скачать аддон Live HTTP Headers   - Нажать Инструменты-Дополнения (Tools-addons), оттуда перейти на сайт аддонов для ФФ и скачать аддон Live HTTP Headers
Line 147: Line 159:
 ===== It counts 3 times more traffic then I actually have ===== ===== It counts 3 times more traffic then I actually have =====
  
-Часто сталкиваюсь со сл. ситуацией: при ошибках вебсервера (403, 404 ) редиректит на корень домена. При отсутствующей карнитке на индексе браузер загружает вместо отсутствующей картинки - индекс, так мы получаем 2 ина при одном заходе.+Часто сталкиваюсь со сл. ситуацией: при ошибках вебсервера (403, 404 ) редиректит на корень домена. При отсутствующей картинке на индексе браузер загружает вместо отсутствующей картинки - индекс, так мы получаем 2 ина при одном заходе.
  
 Вариант 2: на корне лежит индекс смарта. При этом в [[CJ Pages]] так же прописан тот же индекс, получается что индекс инклудит сам себя. Вариант 2: на корне лежит индекс смарта. При этом в [[CJ Pages]] так же прописан тот же индекс, получается что индекс инклудит сам себя.
  
-Вариант 3: включена опция Use SmartCJ as toplist script, а у вас обычный сидж. 
  
 +В любом случае проверить это достаточно просто.
  
 +1. делаем тестовый темплейт где просто строка "тест"
 +2. открываем сайт как domain/?force_template=test
 +3. убеждаемся что в логе подсчета хитов только 1 запись с вашего ИП
 +4. переносим в тестовый темплейт по частям то что у вас в индексе до того момента как заметите что считает 2 раза
 ===== All traders are marked as banned by uribl.com ===== ===== All traders are marked as banned by uribl.com =====
  
Line 166: Line 182:
 Если у вас отвечает например "can not connect" или "can not resolve" - надо обратиться к админу и попросить поправить resolv.conf. Как вариант показать доку (http://www.uribl.com/about.shtml) с описанием того, как это должно работать. Если у вас отвечает например "can not connect" или "can not resolve" - надо обратиться к админу и попросить поправить resolv.conf. Как вариант показать доку (http://www.uribl.com/about.shtml) с описанием того, как это должно работать.
  
- 
-===== History is empty ===== 
- 
-Скрипт пишет хистори каждый час в определнную минуту. Если в нужную минуту скрипт не будет запущен - хистори не будет записана. 
-Следовательно основная причина - cron.php запускается не каждую минуту. Причины - локи в кроне, неправильно прописан крон и тп. 
  
  
Line 223: Line 234:
  
 Обычно по хедерам сразу ясно что как и почему, если что-то не ясно - суппорт на форуме поможет разобраться. Обычно по хедерам сразу ясно что как и почему, если что-то не ясно - суппорт на форуме поможет разобраться.
 +
 +
 +===== How to change country =====
 +
 +Для теста кликов из определенной страны надо сменить страну для сервера. Те если например вы в стране 1, а надо эмулировать клик из страны 2, то не надо покупать VPN страны 2, достаточно в common.php указать примрено следующее:
 +
 +<code>
 +
 + if ($_SERVER['REMOTE_ADDR'] == '1.1.1.1') {
 + $_SERVER['GEOIP_COUNTRY_CODE'] = 'DE';
 + }
 +
 +</code>
 +
 +где 1.1.1.1 - заменить на ваш реальный ИП, а DE заменить на код страны которая вам надо.
  
 ===== Global Admin does not work ===== ===== Global Admin does not work =====
Line 231: Line 257:
  
 и смотрим какой ответ. Должно ответить HTTP/1.1 501 Password Error, если нет - значит надо смотерть админа куда на самом деле уходит запрос. и смотрим какой ответ. Должно ответить HTTP/1.1 501 Password Error, если нет - значит надо смотерть админа куда на самом деле уходит запрос.
 +
 +===== Imagemagick lib path error ===== 
 +
 +Скрипт проверяет правильность пути основных либ, в том числе imagemagick. Проверка происходит как 
 +
 +<code>
 +exec("/path/to/imagemaick/convert --version", $output, $error);
 +</code>
 +
 +если $error не 0 (те произошла какая то ошибка, то выводится предупреждение. Если админ считает что путь правильный то может сделать пхп файл 
 +
 +<code>
 +<?php
 +exec("/path/to/imagemaick/convert --version", $output, $error);
 +echo $error;
 +</code>
 +
 +и проверить выводится ли ошибка.
 +
 ===== Cloudflare ===== ===== Cloudflare =====
  
Line 254: Line 299:
  
 </code> </code>
 +
 +
 +
 +===== PHP version mismatch =====
 +
 +Скрипт работает под управлением IonCube Optimizer,  который требует свои файлы под разные версии PHP. Когда вы в шеле запускаете установку скрипта, он определяет версию пхп с которой его запустили и скачивает файлы под нужную версию
 +
 +Но бывает что на сервере стоит несоклько версий пхп, одна из них является дефолтной. Например если просто в шеле написать 
 +
 +<code>
 +
 +user@server:~/$ php -v
 +PHP 7.0.33-0ubuntu0.16.04.16+esm4 (cli) ( NTS )
 +
 +</code>
 +
 +
 +то можно увидеть что дефолтная версия - 7.0.33, при этом для веба может быть включена другая версия.
 +
 +Открываем scj/admin/test.php - PHP Version 7.4.29
 +
 +Получается, что файлы скачали для 7.0, а запускаем с 7.4 , в этом случае IonCube работать не будет.
 +
 +Надо просить админа унифицировать версии.
 +
 +
 +===== Full description copy - Warning  =====
 +
 +По умолчанию слейв имеет те же дески, что и мастер. Фактически он использует таблицу мастера с десками. Можно рассоединить дески мастера и слейва, что бы на слейве были те же галеры, но с другими десками. Делается это на мастере , сетинги ротации, master - slave.
 +
 +
 +Иногда люди рассоединяют дески, однако не меняют дески. 
 +
 +В чем минус:
 +
 +- для слейва создается таблица с теми же десками, но она занимает место.
 +- mysql кеширует и таблицу мастера и таблицу слейва, хотя по факту это одни и те же данные - занимает место в памяти
 +
 +Поэтому если вы не меняете дески на слейве то лучше не рассоединять и экономить ресурсы сервера.
 +
 +
 +===== Server setup error, apache\nginx is running with user permissions - Warning  =====
 +
 +
 +Во всех системах есть разделение прав пользователей. Например, рут имеет право менять все файлы, пользователь - только свои. Это сделано для того что бы разграничить права в системе и не дать например пользователю накосячить с файлами других пользователей либо вообще уронить сервер из-за того что пользователь поменял настройки сервера, не понимая что конкретно он делает.
 +
 +Так же есть разграничение прав пользователя и вебсервера (апач\nginx). Например, пользователь залил скрипт (файлы) на сервер. Например, в скрипте или темполейтах есть дыра\баг и злоумышленник через эту дыру решает залить бэкдор \ эксплоит на сервак. В нормальной ситуации, когда права пользователей разделены, хакер не сможет ничего записать в файл юзера и сервер будет в безопасности, потому что по умолчанию один пользоватль (апач) не может менять файлы другого пользователя (юзера)
 +
 +Иногда, для некоторых файлов, надо дать разрешение на запись другому пользователю, например, юзер дает разрешение на запись в один конкретный файл (условно log.txt) - другим пользователям (например апач), тогда на этот конкретный файл ставят пермишены 666.
 +
 +
 +Однако, иногда сервак настраивают криво, и апач может писать в любой файл любого юзера. Таким образом, если в темплейте будет дыра, то хакер сможет подменить файл скрипта и например начать редиректить себе ваш траф.
 +
 +
 +===== You are behind proxy - Warning  =====
 +
 +Для скрипта важно правильно находится ли пользователь за прокси, тк самый простой вариант накрутить скрипт - это делать клики с разных ИП (через прокси)
 +
 +Прокси определяются по наличию хедеров в запросе (HTTP_X_FORWARDED_FOR, HTTP_FORWARDED_FOR, HTTP_CLIENT_IP).
 +
 +Но часто при настройке nginx + apache не настраивают передачу хедеров. Получается что приходит запрос с ИП 22.22.22.22 на nginx , он должен этот запрос передать апачу и "дергает" апач, но поскольку апач на том же хосте что и nginx то запрос апачу приходит уже с ИП 127.0.0.1, что бы передать реальный ИП nginx  добавляет поле HTTP_X_FORWARDED_FOR = 22.22.22.22 и апач уже думает что это запрос через прокси.
 +
 +Что б такого не было в апаче есть моды которые автоматически обрабатывают такую ситуацию (mod_remoteip, mod_rpaf) и выставляют реальный IP при запросах с 127.0.0.1 (те когда апач стоит за nginx )
 +
 +===== Grabber - Can not download =====
 +
 +Если граббер (тумбы топа трейдеров, галереи и тп те любой контент который надо скачать откуда-то) не может скачать (can nod download, can not connect and so on) то 
 +
 +  * скачивает не SmartCJ, а сервак (curl lib конкретно)
 +  * что б проверить можно на серваке в шеле сделать 
 +
 +  wget http://your_url
 +  or
 +  curl http://your_url
 +  
 +
 +  * и проверить что отвечает сервак (99% случаев - тут надо отписать админу с этой ошибкой)
 +
 +Какие бывают причины:
 +
 +  * криво настроенный DNS: контент находится на IP 1.1.1.1 а у вас на серваке DNS отпределяет его как 2.2.2.2
 +  * IP сервака с которого вы пытаетесь скачать - забанен на хосте откуда надо скачать 
 +
 +
  
ru/troubleshooting.1578248549.txt.gz · Last modified: by admin