Задать вопрос
  • Welcome to nginx - как попасть на сайт?

    1. какая веб морда
    2. какие демоны еще
    3. конфиги apache
    4. 0.0.0.0 - че за айпи такой?
    Ответ написан
    Комментировать
  • Как правильно сделать 301 редирект для большого количества страниц?

    shambler81
    @shambler81 Куратор тега htaccess
    дайте хоть нескольо ссылок
    посколкьу в данный момент видна логика измения цифр на единицу выше и условие до 60, не уверен что вам нужно сдвинуть цифры на единицу
    а желательно дайте все урлы.
    И да порой приходится делать по 5К редиректов а не по 60
    Ответ написан
  • Почему в linux нерекомендуют постоянно использовать root учетную запись?

    shambler81
    @shambler81 Куратор тега Linux
    не имея доступа до критических файлов вы не можите.
    1. заразиться вирусом ( вот вообще не можете)
    2. Повредить по
    3. конфедициальность ос обеспечивает сама ос, вы просто привыкли к винде, это вообще нормально не работать от админа.
    Подумав над этим вы придете к мысли что это куда логичней чем работать от рута.
    Однако на серверах я работаю всегда от рута, посколкьу мне хватает и знания и опыти и понимания того что я и как делаю в полном объеме, и понимаю риски.
    Ответ написан
  • Не корректно работает rewriteRule в htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteEngine on
    RewriteBase /
    Options +FollowSymlinks
    AddDefaultCharset UTF-8
    ErrorDocument 404 /404.php
    
    
    ############################################################################
    #### Выбор основного зеркала (с www или без www)                        ####
    ############################################################################
       # 2. Добавить www
    RewriteCond %{ENV:HTTPS} on
        #Если включен https
    RewriteRule .* - [E=SSL:s]
        #То создаем переменную  ssl с текстом s
    RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
        # Если нет www в начале домена
    RewriteCond %{REQUEST_URI} !^/robots.*
    	# ваш robots.txt
    RewriteRule ^(.*)$ http%{ENV:SSL}://www.%{HTTP_HOST}/$1 [R=301,L]
        #Подставляем www и https если он включен.
    ############################################################################
    #### Перенаправляем протокол http на https                              ####
    ############################################################################
    RewriteCond %{HTTPS} off
       # Проверяем наличие https в URL.
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
       # Перенаправляем протокол на http.
    
    ############################################################################
    #### Убираем index.php, если он есть в конце URL                        ####
    ############################################################################
    RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
       # URL cодержит index.php в конце.
    RewriteCond %{REQUEST_METHOD} =GET
       # Выявляем GET запрос в URL (не POST).
    RewriteRule ^(.*)$ %1/ [R=301,L]
       # Удалить index.php из URL.
    
    ############################################################################
    #### Убираем повторяющиеся слеши (/) в URL                              ####
    ############################################################################
    RewriteCond %{THE_REQUEST} //
       # Проверяем, повторяется ли слеш (//) более двух раз.
    RewriteCond %{QUERY_STRING} !http(s|)://
      # Убедимся что это не урл в  GET
    RewriteRule .* /$0 [R=301,L]
       # Исключаем все лишние слеши.
    
    ############################################################################
    #### Убираем слеши в конце URL для статических файлов (содержит точку)  ####
    ############################################################################
    RewriteCond %{REQUEST_URI} \..+$
       # Если файл содержит точку.
    RewriteCond %{REQUEST_FILENAME} !-d
       # И это не директория.
    RewriteCond %{REQUEST_FILENAME} -f
       # Является файлом.
    RewriteCond %{REQUEST_URI} ^(.+)/$
       # И в конце URL есть слеш.
    RewriteRule ^(.+)/$ /$1 [R=301,L]
       # Исключить слеш.
    
    ############################################################################
    #### Добавляем слеш(/), если его нет, и это не файл.                    ####
    ############################################################################
    RewriteCond %{REQUEST_URI} !(.*)/$
       # Если слеша в конце нет.
    RewriteCond %{REQUEST_FILENAME} !-f
       # Не является файлом.
    RewriteCond %{REQUEST_URI} !\..+$
       # В URL нет точки (файл).
    RewriteCond %{REQUEST_URI} ^(.+)$
     # В URL есть хоть один символы
    RewriteRule ^(.*)$ $1/ [L,R=301]
       # Добавляем слеш в конце.
    
    ############################################################################
    #### Компрессия статического контента для гугл  спид тест               ####
    ############################################################################
    <IfModule mod_deflate.c>
      AddType image/svg+xml .svg
      AddOutputFilterByType DEFLATE image/svg+xml  
      AddOutputFilterByType DEFLATE application/rss+xml
      AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
      AddOutputFilterByType DEFLATE application/x-font
      AddOutputFilterByType DEFLATE application/x-font-opentype
      AddOutputFilterByType DEFLATE application/x-font-otf
      AddOutputFilterByType DEFLATE application/x-font-truetype
      AddOutputFilterByType DEFLATE application/x-font-ttf
      AddOutputFilterByType DEFLATE application/x-javascript
      AddOutputFilterByType DEFLATE application/xhtml+xml
      AddOutputFilterByType DEFLATE application/xml
      AddOutputFilterByType DEFLATE font/opentype
      AddOutputFilterByType DEFLATE font/otf
      AddOutputFilterByType DEFLATE font/ttf
      AddOutputFilterByType DEFLATE image/svg+xml
      AddOutputFilterByType DEFLATE image/x-icon
      AddOutputFilterByType DEFLATE text/css
      AddOutputFilterByType DEFLATE text/html
      AddOutputFilterByType DEFLATE text/javascript
      AddOutputFilterByType DEFLATE text/plain
      AddOutputFilterByType DEFLATE text/xml
      AddOutputFilterByType DEFLATE image/svg+xml
    </IfModule>
    <IfModule mod_expires.c>
      ExpiresActive on
      ExpiresByType image/jpeg "access plus 1 year"
      ExpiresByType image/svg "access plus 1 year"
      ExpiresByType image/gif "access plus 1 year"
      ExpiresByType image/png "access plus 1 year"
      ExpiresByType text/javascript "access plus 1 year"
      ExpiresByType text/css "access plus 1 year"
      ExpiresByType application/javascript "access plus 1 year"
      ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
      ExpiresByType application/x-font-ttf "access plus 1 year"
      ExpiresByType application/x-font-opentype "access plus 1 year"
      ExpiresByType application/x-font-woff "access plus 1 year"
      ExpiresByType image/svg+xml "access plus 1 year"
    </IfModule>
      <IfModule mod_headers.c>
      <filesmatch "\.(ico|flv|jpg|jpeg|webp|png|gif|css|swf)$">
      	Header set Cache-Control "max-age=31536000, public"
      </filesmatch>
      <filesmatch "\.(html|htm)$">
      	Header set Cache-Control "max-age=7200, private, must-revalidate"
      </filesmatch>
      <filesmatch "\.(pdf)$">
      	Header set Cache-Control "max-age=86400, public"
      </filesmatch>
      <filesmatch "\.(js|otf|ttf|woff|woff2)$">
      	Header set Cache-Control "max-age=31536000, private"
      </filesmatch>
      </IfModule>
    ############################################################################
    #### Конец общей части, далее следует собственные директивы .htaccess   ####
    ############################################################################
    
    RewriteRule ^([^/.]*)/?$             	      index.php\?la\=$1 [QSA,L]
    RewriteRule ^(.*)/(.*)/?$                     index.php\?la\=$1&url\=$2 [QSA,L] #/ru/forecast/
    RewriteRule ^(.*)/(.*)/(.*)/?$                index.php\?la\=$1&url\=$2&country\=$3 [QSA,L] #/ru/forecast/Russia/
    RewriteRule ^(.*)/(.*)/(.*)/(.*)/?$           index.php\?la\=$1&url\=$2&country\=$3&region\=$4 [QSA,L] #/ru/forecast/Russia/Murmansk
    RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/?$      index.php\?la\=$1&url\=$2&country\=$3&region\=$4&city\=$5 [QSA,L] #/ru/forecast/Russia/Murmansk/Apatity
    RewriteRule ^(.*)/(.*)/(.*)/(.*)/(.*)/(.*)/?$ index.php\?la\=$1&url\=$2&country\=$3&region\=$4&city\=$5&dop\=$6 [QSA,L] #/ru/forecast/Russia/Murmansk/Apatity/10days - <b>ЗДЕСЬ ПРОБЛЕМА!!!</b>
    
    #########RewriteCond %{THE_REQUEST}  !images
    ########RewriteCond %{THE_REQUEST}  !tr
    ######## А где рул !!!

    Я тут подправил некоторые пункты, так что можешь посмотреть.
    теперь что по поводу твоей пролемы, тут все просто, у тебя частные случаи срабатывают позней общих.
    А в .* у тебя включиться может и / так что это удовлетворяет условию
    если ты хочешь их исключить то пожалуйста вставь в каждую группу [^/] - исключить символ
    ну или попробуй просто поменять местами. как я тебе показал, возможно этого вполне хватит поскольку .htaccess читается с верух в низ. и правила применяются вначале сверху потом снизу ( если до него дойдет)
    Ответ написан
    1 комментарий
  • Существуют ли адекватные сторейдж сервиcы (клауды) для хранения бэкапов?

    Как всегда у них цены самые низкие, да и тарифы вкусные
    https://ru.hetzner.com/hosting/produktmatrix/stora...
    Из цены убрать еще 20% НДС, вернут
    Ответ написан
    1 комментарий
  • Как вывесить локальный ресурс в интернет?

    что-то вроде этого ?
    https://github.com/fireshaper/MostlySecureCameraViewer
    Ответ написан
    Комментировать
  • Как определить свободное место на диске Ubuntu?

    shambler81
    @shambler81 Куратор тега Linux
    df выдает данные в байтах
    Ответ написан
    Комментировать
  • С чем связана ошибка в битрикс?

    shambler81
    @shambler81 Куратор тега 1С-Битрикс
    Allowed memory size

    По моему тут написана проблема, какие миллионы вариантов?
    Ответ написан
    Комментировать
  • Можно ли разместить на одном хостинге (ip) три сайта и как это будет влиять на ранжирование?

    Нормально это будет выглядеть, все хостинги именно так и размещают.
    Все там нормально будет с SEO не парьтесь
    Все веб сервера имеют один и тот же костыль не по RFC tcp\ip
    они могут держать несколько сайтов на одном и том же порту на том же айпи.
    Сделано это как вы понимаете для уменьшения количества используемых айпи и используется в 100% веб серверов.
    Да при использование одного айпи могут быть проблемы, например со спамностью писем всего айпи, но сами сайты и их позиции в интернете это не влияет..
    Ответ написан
    Комментировать
  • Что использовать для монтирования YandexDisk/WebDAV под Linux с шифрованием?

    shambler81
    @shambler81 Куратор тега Linux
    создаеш файлик (файл это блочное устройство) форматируешь его под ext2, кидаеш его на яндекс диск монтируешь файлик аки диск в системе, наслаждааешся ;)
    Только не надо говорить что ты не разу не форматировал файлы под файловую систему
    пример dvg /iso
    Ответ написан
    2 комментария
  • Как сейчас выглядит нормальная система сборки / мониторинга?

    monit-it.ru
    Для старта пойтет вот это
    из особенностей
    поддержка плагинов nagios
    и главное, подключается по ssh и может выполнить команду вернуть себе код сделать выводы.
    Ну и особо важное при алиарде можно выполнить консольную команду.
    А главное это хрень облачное и не нужно следить за самой системой мониторинга.
    Для мониторинга инфроструктуры яндекс явно не пойдет, а вот для своих проектов нормально.
    Я монитрю в ней окол 20 серверов, 600 сайтов, в принципе хватает.
    А главное как вы и просили минимальный уровень входа.
    Ответ написан
    4 комментария
  • Почему при переносе сайта на 2 сервера снизилась производительность БД?

    shambler81
    @shambler81 Куратор тега 1С-Битрикс
    1. естественно замедлил, даже обращение через локальный домен и localhost разница есть, посколкьу задействуется DNS сервер и ETH0
    а уж сервер расположеный я так пониимаю не в том же датацентре, да еще и не соедененые физически шнурком, дают просадку.
    2. Покажите конфиши mysql
    2. нужно смотреть конфиги сервера можно их конечно немного подкрутить, но есть очерь простые средства.
    Например перейти нановые процессоры I9 ну и ксеоны их аналоги.
    Вот пример на битрикс вм
    База данных MySQL (запись)	12 694	5 600	количество запросов на запись в секунду
    База данных MySQL (чтение)	81 827	7 800	количество запросов на чтение в секунду
    База данных MySQL (изменение)	23 374	5 800	количество запросов на изменение в секунду

    Думаю комментарий излишен.
    3. что можно сделать
    innodb_flush_log_at_trx_commit = 2 заменить на innodb_flush_log_at_trx_commit = 0
    так же оптимизировать количество подключений и тд, но это уже нужно анализировать сайт.
    так же нужно поработать с кешем на самом сайте.
    оптимизировать изображения, включить объедененый кеш css js и тд.
    Обязательно задрать php до максимальной версии, в идеале 7.3 да вм по умолчанию тянет 7.1
    В общем там целый пласт работ что можно сделать.
    Но в вашем случае у вас медленный впс и самое разумное это поменять его.
    вот это порвет ваш сервер раз в 15
    https://ru.hetzner.com/hosting/produkte_rootserver...
    12 ядер по 5 GHz
    https://ru.hetzner.com/hosting/produkte_rootserver...
    тоже более чем достаточно 8ядер
    цены -20%ндс поскольку в германии их нет.
    В россии пока только только появляются процессоры на 2 покаления слабее, а для mysql важна скорость работы на одно ядро а не их количество, так что если вы возьмете 128 ядерник с 3 ghz то и получите машину соппоставимую с плохой офисной тачкой ( пардон 128 ) плохими офисными тачками.
    Ответ написан
    1 комментарий
  • Можно ли такое реализовать?

    фанфары
    вам нужен не DRP а RDG - это штатное хозяйство windows
    в интернете мало манов и он почему-то плохо распиарен но подключение через веб морду в RDP+SSL
    естественно штатное на IIS

    так же на просторе легко нашлось и apache решение, в общем все уже придумано для вас
    Как получить доступ к Remote Desktop Gateway на Windows 10?
    guacamole.apache.org
    Ответ написан
  • Сайт выполнил переадресацию слишком много раз. Как исправить?

    shambler81
    @shambler81 Куратор тега htaccess
    .htaqccess в студию
    в access.log посмотрите конкретно что в цикле
    Ответ написан
  • Как собрать Linux Mint на основе пакетного менеджера NIX?

    shambler81
    @shambler81 Куратор тега Linux
    простите а зачем?
    Ответ написан
    Комментировать
  • Как сильно упадет сайт по SEO после смены домена?

    странный вопрос, до нуля
    ну а после переиндексации как пойдет
    Ответ написан
    Комментировать
  • Как изменить url с GET параметрами .htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    Конкретно по ТЗ
    RewriteCond %{QUERY_STRING} (^|&)username\=georgii($|&)
    RewriteRule ^profile$ /profile/georgii? [L,R=301]

    А тут я вангую что вам нужно не только 1 гет параметр а любой из них
    RewriteCond %{QUERY_STRING} (^|&)username\=(.+)($|&)
    RewriteRule ^profile$ /profile/%2? [L,R=301]

    И Да делается по нормальному это через ЧПУ
    Примерно так

    <IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
    RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
    </IfModule>

    А дальше уже обрабатывает php в 99% CMS это уже реализовано.
    Ответ написан
    Комментировать
  • Как сделать такой 301 редирект?

    shambler81
    @shambler81 Куратор тега htaccess
    Так же у вас будет проблемма и с
    https://site.ru/category/?page=1
    https://site.ru/category/?page=2
    https://site.ru/category/?page=3
    Поскольку пара урл запрос и тайтлы и дескрипшены будут не уникальные, ч то может плохо повлиять на СЕО
    поскольку дубли страниц "канибализируют запрос" особенно это важно для низко и средничастотных, посколкьу в таком случае они могут еще и меняться в выдаче.
    и того решение
    1. Риал каноникал вшытое в шапку, критерий следующий если есть гет параметр то ссылка на страницу без GET.
    В индексе вообще не должно быть ни одной страницы с гет параметром.
    2. Убрать вообще пейдженацию сейчас есть отличное и рекомендованное решение от гугл https://developers.google.com/web/fundamentals/per...
    3. убрать пейдженацию за аякс
    4. исключить пейдженацию в robots.txt как страницы закрытые от индекса
    Ответ написан
    Комментировать
  • Bitrix CMS важен ли модуль "проактивная защита"?

    shambler81
    @shambler81 Куратор тега 1С-Битрикс
    Да нужна так же на стартен нет реально множества нужных функций
    так что минимальная версия битрикс это "стандарт" даже для лендинга.
    Просто возьмите это за постулат.
    Ответ написан