Задать вопрос
  • Как указать вирутальный хост Apache2 по умолчанию?

    <VirtualHost _default_:80>
            ServerAdmin webmaster@localhost
    
            DocumentRoot /var/www/default/web/
            <Directory />
                    Options FollowSymLinks
                    AllowOverride None
            </Directory>
            <Directory /var/www/default/web>
                    Options Indexes FollowSymLinks MultiViews
                    AllowOverride None
                    Order allow,deny
                    allow from all
            </Directory>
    
            ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
            <Directory "/usr/lib/cgi-bin">
                    AllowOverride None
                    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                    Order allow,deny
                    Allow from all
            </Directory>
    
            ErrorLog ${APACHE_LOG_DIR}/error.log
    
            # Possible values include: debug, info, notice, warn, error, crit,
            # alert, emerg.
            LogLevel warn
    
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    Ответ написан
    Комментировать
  • Как сделать Redirect с UTM меткой через файл .htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    отвечаю на вопрос, вы сделали неправильный вопрос.
    https://donatstudios.com/RewriteRule_Generator
    Ответ написан
  • Как доработать .htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    Используй отрицание
    RewriteCond %{REQUEST_URI} .*botox\.php$ [NC]

    а вообще ты чет перемудрил.

    RewriteCond %{REQUEST_METHOD} =GET
       # Выявляем GET запрос в URL (не POST).
    RewriteCond %{REQUEST_URI} ^(.*)/(botox|index)\.php$
       # URL cодержит index.php в конце.
    RewriteRule ^(.*)$ %1/ [R=301,L]
       # Удалить botox  или index.php из URL.
    Ответ написан
  • Как правильно сделать redirect между доменами - с www.site.ru на site.ru?

    + нет никакого смысла делать штатную вещь в нештатном месте.
    Ответ написан
    1 комментарий
  • Как поправить в .htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    весь файл сюда
    Ответ написан
  • Как сделать синхронизацию двух файловых серверов?

    shambler81
    @shambler81 Куратор тега Linux
    csync
    Ответ написан
    Комментировать
  • Как сделать такое перенаправление в htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteCond %{HTTP_USER_AGENT} !android|avantgoю.....
    RewriteCond %{HTTP_USER_AGENT} !^(1207|6310|6590|3gso|4thp|5
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule (.*) index.php


    RewriteCond %{HTTP_USER_AGENT} android|avantgoю.....
    RewriteCond %{HTTP_USER_AGENT} ^(1207|6310|6590|3gso|4thp|5
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule (.*) mobile.php
    Ответ написан
    Комментировать
  • Редирект при множественном "///"?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteCond %{THE_REQUEST} //
    RewriteRule .* /$0 [R=301,L]

    - единственный нормально работающий способ.
    А вот тебе в добавок дополнительные, тут доп исключения.

    ############################################################################
    #### Cтандартный .htaccess для проектов студии Клондайк, версия 2.4     ####
    ############################################################################
    RewriteEngine On
       #  Директива включает редиректы.
    RewriteBase / 
       # Без директивы (.*) = /$1 будет /var/wwww/site/web/$1  с директивой  = /$1
    Options +FollowSymLinks
       # Разрешает переход по символическим ссылкам.
    
    ############################################################################
    #### Перенаправляем протокол https на http                              ####
    ############################################################################
    RewriteCond %{HTTPS} on
       # Проверяем наличие https в URL.
    RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI}
       # Перенаправляем протокол на http.
    
    ############################################################################
    #### Выбор основного зеркала (или с www или без www)                    ####
    ############################################################################
       # 1. Редирект с www на без www. (раскоментировать директивы пункта 1)
    #RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
       # Проверяем, содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
       # Перенаправляем URL на домен без www.
    ####
       # 2. Редирект без www на www. (раскоментировать директивы пункта 2)
    #RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
       # Проверяем, не содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
       # Перенаправляем URL на домен c www.
    
    ############################################################################
    #### Убираем повторяющиеся слеши (/) в URL                              ####
    ############################################################################
    RewriteCond %{THE_REQUEST} //
       # Проверяем, повторяется ли слеш (//) более двух раз.
    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 нет точки (файл).
    RewriteRule ^(.*)$ $1/ [L,R=301]
       # Добавляем слеш в конце.
    
    ############################################################################
    #### Убираем index.php, если он есть в конце URL                        ####
    ############################################################################
    RewriteCond %{REQUEST_METHOD} =GET
       # Выявляем GET запрос в URL (не POST).
    RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
       # URL cодержит index.php в конце.
    RewriteRule ^(.*)$ %1/ [R=301,L]
       # Удалить index.php из URL.
    
    ############################################################################
    #### Компрессия статического контента для гугл  спид тест               ####
    ############################################################################
    <IfModule mod_deflate.c>
      # Compress HTML, CSS, JavaScript, Text, XML and fonts
      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 3 day"
      ExpiresByType image/svg "access plus 3 day"
      ExpiresByType image/gif "access plus 3 day"
      ExpiresByType image/png "access plus 3 day"
      ExpiresByType text/javascript "access plus 3 day"
      ExpiresByType text/css "access plus 3 day"
      ExpiresByType application/javascript "access plus 3 day"
    </IfModule>
    ############################################################################
    #### Конец общей части, далее следует собственные директивы .htaccess   ####
    ############################################################################
    Ответ написан
    1 комментарий
  • Как реализовать 301 редирект для правил?

    shambler81
    @shambler81 Куратор тега htaccess
    Нет не будут если ты жестко пропишешь логику.

    Для сладкой жизни
    https://donatstudios.com/RewriteRule_Generator

    Твой вопрос
    RewriteCond %{REQUEST_URI} ^(.*)/dir1/(.*)$ 
    # если строка содержит /dir1/ 
    RewriteRule ^(.*)$ %1/dir2/%2 [R=301,L] 
    #Перенаправить все урлы с начинающиеся с dir1 на dir2 с сохранением дальнейшей структуры URL


    Но тебе как я понял нужно ТОЛЬКО страницу /magazin/browse/manufacturer/ а не все начинающиеся с /magazin/browse/manufacturer/
    Так что ограничь
    RewriteCond %{REQUEST_URI} ^(.*)/dir1(/|)$
    (/|) - или со слешем
    $ - конец строки
    И вопрос который появится утебя потом
    как исклчить определенную страницу а остальные перенаправить
    Отрицание работает обсалютно на всю логику
    RewriteCond %{REQUEST_URI} ^(.*)/magazin/category/manufacturer(/|)$ 
    RewriteCond %{REQUEST_URI} !^/magazin/category/manufacturer/#SECTION_CODE#/#XML_ID#.html$ 
    RewriteRule ^(.*)$ %1/dir2/%2 [R=301,L]

    И того:

    Если урл
    если не содержит
    То
    Ответ написан
    Комментировать
  • Создал .htaccess а он почему-то не заработал. может его где включить надо или еще чего?

    shambler81
    @shambler81 Куратор тега htaccess
    да нужно включить RewriteEngine On
    если он есть то у тебя не работает мод реврайт
    с консоли
    php -m | grep rewrite
    Если отключено то зайди в панель управления хостингом и включи mod_rewrite

    Так же если у тебя nginx без апача то .htaccess не будет в нем работать.
    Ответ написан
    Комментировать
  • Как удалить пустые папки в определенном порядке в bash?

    shambler81
    @shambler81 Куратор тега Linux
    у файнда есть все чт отебе нужно
    и глубина мин и макс
    и кстати вывод только пустых !
    Ответ написан
    Комментировать
  • На чём написаны панели управления?

    shambler81
    @shambler81 Куратор тега Linux
    язык php поскольку больше комьюнити
    движок - свой поскольку всеже ни один из движко вне приспособлен для управление системой по сему там кастома будет 99%.
    Теперь если ты хочешь писать
    Не трать время в пустую помоги интернет комьюнити ispconfig3 - я его предпочитаю.
    Ну или vesta
    Ответ написан
  • Как грамотно сделать редирект https nginx?

    server {
       listen  80;
       server_name  www.domain.com;
       rewrite ^ https://www.domain.com$request_uri? permanent; 
    }
    Ответ написан
    Комментировать
  • MOD_REWRITE или почему редиректы не хотят работать?

    RewriteEngine On
    RewriteCond %{SERVER_PORT} ^80$ [OR]
    RewriteCond %{HTTP} =on
    RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]
    Ответ написан
    Комментировать
  • Как правильно сделать перенаправление в htaccess (HTTPS включено)?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteEngine On
    RewriteBase /
    RewriteRule ^rules-23$ https://site.ru/rules$  [NC,L]


    Или
    RewriteRule ^rules\-23$ https://site.ru/rules$  [NC,L]
    Ответ написан
  • Как в htaccess указать, что нужно отдавать предварительно сжатые файлы?

    shambler81
    @shambler81 Куратор тега htaccess
    а так не?
    <IfModule mod_deflate.c>
      # Compress HTML, CSS, JavaScript, Text, XML and fonts
      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 3 day"
      ExpiresByType image/svg "access plus 3 day"
      ExpiresByType image/gif "access plus 3 day"
      ExpiresByType image/png "access plus 3 day"
      ExpiresByType text/javascript "access plus 3 day"
      ExpiresByType text/css "access plus 3 day"
      ExpiresByType application/javascript "access plus 3 day"
    </IfModule>
    Ответ написан
  • Как сделать редирект всех урл с? на главную страницу сайта (подробнее в описании)?

    shambler81
    @shambler81 Куратор тега htaccess
    если файл существует, то это ответ 200ок ?
    тогда вам смело в nginx
    Проверку в .htaccess я бы ооочень не рекомендовал, не говря уже что без костылей это не сделать.
    Ответ написан
  • Что нужно освоить в Ubuntu?

    значит так чтоб выучить линукс тебе нужно две
    вещи
    1. забей на гуи, их слишком много и они все кривые, учи их постольк пскольку.
    2. Юзай консольные утилиты, вполоть до плеера и редактора.
    3. выучи find grep xargs sed и в принципе после этого большую часть задач в линуксе ты сможешь решить сам.
    чем лучше ты вучишь вышепересисленное тем быстрей ты поймешь бесполезность всех учебников.
    Ответ написан