Задать вопрос
Ответы пользователя по тегу Apache HTTP Server
  • Почему мой сайт редиректит на порно?

    у вас на сайте вирус
    или испльзуется уязвимость в самой СМС , но по сути одно и то-же
    1. Найдите все вирусы https://www.revisium.com/ai/ - кнопочка для сайтов.
    2. Запускаете сканер или с консоли ( с нее явно лучше ) или в браузере ( часов 10 займет)
    3. Удаляете вирсы ( не все что он найдет подозритеьного а только то что реально к вам отношения не имеет.) порой это эксплойты в сотнях а то и тысячах файлах, а бывает и десятки тысяч своих файлов.
    Бывает 1 файл. тут как пойдет .
    После этого уже приводите в порядок .htaccess ну и ждете новой индексации.
    4. используйте nazamok.com
    5. Настраиваете систему бэкапирования.
    6. по возможности в зависимости от вируса, можно найти способ его проникновения, желательно удалить этот способ.
    Ну и да конечно желательно обновить движок сайта по максиму ( только после полного бэкапа!)
    Ответ написан
    1 комментарий
  • Mod_rewrite Как сделать редирект с http на https и site.com на www.site.com?

    # 1. Удалить www
    RewriteCond %{ENV:HTTPS} on
        #Если включен https
    RewriteRule .* - [E=SSL:s]
        #То создаем переменную  ssl с текстом s
    RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
        # Проверяем, содержит ли домен www в начале URL.
    RewriteRule ^(.*)$ http%{ENV:SSL}://%1/$1 [R=301,L]
        # Перенаправляем удаляем www
    
        # 2. Добавить www
    RewriteCond %{ENV:HTTPS} on
        #Если включен https
    RewriteRule .* - [E=SSL:s]
        #То создаем переменную  ssl с текстом s
    RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
        # Если нет www в начале домена
    RewriteRule ^(.*)$ http%{ENV:SSL}://www.%{HTTP_HOST}/$1 [R=301,L]
        #Подставляем www и https если он включен.
    Ответ написан
  • Как ускорить работу Apache: отдачу статических файлов и выполнение PHP?

    Вы допустили типичную ошибку купили xeon и думаете что он в зависимости от своей стоимости будет так же быстрей работать.
    И так что вам нужно
    skylike с максимальной частотой, дада - ваше " эээ железо" обгонит обычный core i3 не говоря уже о нормальном i7
    Аренда его выйдет дешевле, покупка тоже,а производительность будет куда как лучше.
    И причина тут в тактовой частоте, апачь плохо паралелит процессы, а даже паралеля их он все-равно хит выполняет на 1 проце. В следствие чего скорость вашего ксеонао в 2Ghz и есть ваша пиковая скорость и 30 ядер тут ниче не решают, обычный офисный комп его уделает.
    Все что вы множите получить с этого железа это большое количество параллельных запросов, при той же скорости.
    Но как вы понимаете вам нужно не это 10-50 Тыс человек в день вполне себе тянет 1 проц I7
    по сути вы не проконсультировавшись или купили или арендовали полный хлам не подходящий для веб приложений. В частности для сайтов.
    да можно хоститься и на этом железе, и часть вещей на нем так же будет лучше работать, а вот средний хит провалится в жесткий унитаз.

    Рекомендую.
    Снять дидикейт, дабы это не так трудно.
    варианты
    hetzner - германия отличные тарифы, берем только ссд и только скайлайки пинт 50
    https://chipcore.com/ - питер, пинг 5-10 любой из тарифов всяко будет пободрей.
    Ответ написан
  • Как подключить защищенное соединение при помощи letsencrypt?

    че ты делаешь
    1. скопируй свой конфиг обычного сайта.
    Положи его рядом ну и назови его лялля-ссл
    2. Поменяй в нем порт
    3. подключи сертификаты по ману, certbot тебе в помощь. https://certbot.eff.org/
    4. сертификат выдастся толкьо для домена котрый привязан к серверу.
    5. Проверь его на класс сертификата должен быть А+
    6. если нет то добавь еще куски конфигов.

    Вот тебе пример моего конфига, к сожалению у меня nginx под рукой для апача нет, но на оф сайте certbota расписаны обсалютно все ос и виды установок, следуй ману.

    server {
        listen 443 ssl http2;
    
        server_name site.ru.ru www.site.ru.ru;
    
      # enable SSL connection
      #include bx/conf/ssl.conf;
     ssl_stapling on;
     ssl_certificate /etc/letsencrypt/live/site.ru/fullchain.pem;
     ssl_certificate_key /etc/letsencrypt/live/site.ru/privkey.pem;
     ssl on;
     keepalive_timeout 70;
     keepalive_requests 150;
     ssl_session_cache shared:SSL:10m;
     ssl_session_timeout 10m;
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;
     ssl_prefer_server_ciphers on;
     ssl_dhparam /etc/pki/nginx/dhparam.pem;
     ssl_session_cache       shared:SSL:10m;
     ssl_protocols  TLSv1.1 TLSv1.2;
     add_header Strict-Transport-Security "max-age=31536000;";
      #add_header Content-Security-Policy-Report-Only "default-src

    Дабы не путаться вообще вынеси конфиг ссл для своего сайта в отдельный файл.
    Ответ написан
    Комментировать
  • Как настроить https на apache при помощи Let's Encrypt (ubuntu 14.04 django)?

    А это кому как повезет, настройки сервера везде разные, ведь линукс это конструктор, и единого образца построения конфигов и инклудов в них нет.
    Так что вам нуно найти файл отвечающий за текущий домен, найти в нем место отвечающее за https если оно есть. Кстати это может быть вообще отдельный файл.
    Закомнтировать местные настройки и вставить ваши. опять же если они есть.
    Ответ написан
    8 комментариев
  • Как решить проблему с php.ini?

    shambler81
    @shambler81 Куратор тега Linux
    sudo apt-get install libapache2-mod-php
    sudo apt-get install php-mbstring
    Ответ написан
    6 комментариев
  • Как правильно настрить phpmyadmin?

    1. не фантастика отдельно настроенный виртуал хост, манов в интернете навалом, настроен именно на маску /phpmyadmin
    2. так же нужно учесть что последние версии phpmyadmin очень требовательны к версии php и давно уже требуют 7 версию, не факт что все сайты буду в состояние поддерживать новый релиз. Ну и по сути тут вообще ничего сложного.
    3. я так понимаю имелась в виду nginx+apache конфигруация.
    Ответ написан
  • Apache не открывает localhost, может кто сталкивался с такой пробемой?

    /html ? откуда ?
    /var/www
    По умаолчанию туда все ставилось,
    А вообще конечно нужно создать локейшен для сайта.
    Ответ написан
    Комментировать
  • Как правильно настроить редирект?

    shambler81
    @shambler81 Куратор тега htaccess
    А так ?
    RewriteEngine On
    RewriteBase /
    
    RewriteCond %{HTTP_HOST} .
    RewriteCond %{HTTP_HOST} !^www\.redisrus\.ru [NC]
    RewriteRule (.*) www.redisrus.ru/$1 [R=301,L]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(ru|en)/favicon.ico$ favicon.ico [L,QSA]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(ru|en)/assets(.*)$ assets$2 [L,QSA]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(ru|en)?/?(.*)$ index.php\?cultureKey=$1&q=$2 [L,QSA]
    
    RewriteCond %{REQUEST_URI} /index.php
    RewriteCond %{QUERY_STRING} ^\z
    RewriteRule ^(.*)$ www.redisrus.ru/\? [R=301,L]
    
    Redirect 301 /news/890 www.redisrus.ru/new/id-890?
    
    php_flag register_globals Off
    фphp_flag zlib.output_compression On
    php_value zlib.output_compression_level 5
    
    ExpiresActive On
    ExpiresByType image/gif A2592000
    ExpiresByType image/jpeg A2592000
    ExpiresByType image/png A2592000
    BrowserMatch "MSIE" brokenvary=1
    BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1
    BrowserMatch "Opera" !brokenvary
    SetEnvIf brokenvary 1 force-no-vary
    Ответ написан
  • Mod_rewrite и PHP. Как правильно сделать единую точку входа?

    RewriteRule  ^([a-zA-Z0-9_-]+)$ index.php\?route=$1 [QSA,L]

    А экранировать кто за вас будет ?
    Ответ написан
  • Как реализовать парковку доменов?

    chame - это алиас по сути
    А вам нужно в начале указать запись типа "А"
    Вот она как-раз и отвечает какой IP отдастся этим доменом.
    В вашем случае у весты есть ДНС сервер встроеный и у сайтов которые будут хостится на ней достаточно будет указать NS сервера вашего сервера
    например такие
    NS1.ВАШ_СЕРВЕР.РУ
    Ну и естественно ДНС запись самого сервера держать на самом себе не получится. согласитесь это тупо.
    ТАк что ДОмен самого сервера нужно делигировать на сторонний сервис и возвращять с него уже А запись
    Следовательно как надо сделать
    1. Есть ли у вашего регистратора бесплатная. или платная парковка домена с редактированием ДНС зон. ( reg.ru) бесплатно.
    2. Если нет то, делигируйте домен на яндекс https://pdd.yandex.ru/
    не смущяйтесь что это про почту, там есть полноценный редактор ДНС зон, а почту там уже по выбору, я бы рекомендовал на яндексе и оставить.
    но тут вам видней.
    3. Создаете записи типа

    Ваш сайт.ru - А 1.1.1.1
    www. - А 1.1.1.1
    NS1 - A 1.1.1.1
    NS2 - A 2.2.2.2 ( если нет второго айпи то можно и первый но могут быть проблемы с парковкой ком сайтов)
    Ну и так далее.
    Соответственно дальше будет так:
    Клиент прописывает НС сервера ns1.ваш_сайт.ру
    Он отдает А запись домена где расположен ДНС сервер который отдаст А запись от его домена.
    php тут не нужно
    Если же вам интересно что произойдет дальше
    ОН получит IP сайта, скорее всего это будет тот же айпи что иодин из нс серверов, если вы не купили дополнительные.
    магия в том что Апачь может сам разводить сайты в зависимости от HTTP заголовка при запросе, и подставлять нужную вам папку.
    По сути на 1 IP и том же порту могут жить сотни сайтов, для веб сервера это не ограничение
    Ответ написан
    Комментировать
  • Как с .htaccess убрать слеш и пустые данные?

    shambler81
    @shambler81 Куратор тега htaccess
    RewriteCond %{THE_REQUEST} //
    RewriteRule .* /$0 [R=301,L]
    Ответ написан
  • Почему не переходит по ссылке, в которой есть кириллица?

    кирилица есть только у вас в воображение, 90% мира вообще не задумывается о существование чего либо отличного от латиницы.
    Так что ен мудрено что вся эта хрень работает криво.
    Не используйте русские буквы на линукс системах, помоему этому правилу уже лет 50
    А вы все туда же.
    И если вы используете порты апача в винуд не удивляйтесь что причина осталась.
    ТЕперь почему, потому что русских букв нет да здравствует punicode https://hb.by/punycode-converter.aspx
    Ответ написан
    Комментировать
  • Как сделать такое перенаправления в htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    Так сработает текущий редирект на 1 страничку
    RewriteCond %{REQUEST_URI} !^ru/home\-ru/$  [NC]
    RewriteCond %{QUERY_STRING} (^|&)s\=some_text($|&)
    RewriteCond %{QUERY_STRING} (^|&)lang\=ru($|&)
    RewriteCond %{QUERY_STRING} (^|&)NoBots\=83AheSajkmPTJdOtGapEe2KqFgyGoBs75E3X5DfFGC0%3D%7C8997a03685d7552cbe5cb5a867ebfdf5($|&)
    RewriteRule ^.*/$ /\?s=some_text&lang=ru&NoBots=83AheSajkmPTJdOtGapEe2KqFgyGoBs75E3X5DfFGC0%3D%7C8997a03685d7552cbe5cb5a867ebfdf5 [L,R=301]

    где !-отрицание
    Но я так понимаю у тебя таких страниц много ?
    По сему видимо нужно сделать что -то другое
    Видимок как-то так ?
    RewriteCond %{REQUEST_URI} !^ru/home\-ru/$
    RewriteRule ^(.*)$  /$1\?%{QUERY_STRING}
    Ответ написан
    4 комментария
  • Редирект со стаарых URL на переделанные ЧПУ?

    shambler81
    @shambler81 Куратор тега htaccess
    # 301 --- ex.com/maker.php?id=1 => ex.com/maker/1
    RewriteCond %{QUERY_STRING} (^|&)id\=1($|&)
    RewriteRule ^ex\.com/maker\.php$ http://ex.com/maker/1? [L,R=301]
    
    # 301 --- ex.com/condition.php?id=1 => ex.com/condition/1
    RewriteCond %{QUERY_STRING} (^|&)id\=1($|&)
    RewriteRule ^ex\.com/condition\.php$ http://ex.com/condition/1? [L,R=301]
    
    # 301 --- ex.com/expample.php => ex.com/expample
    RewriteRule ^ex\.com/expample\.php$ http://ex.com/expample? [L,R=301]
    Ответ написан
  • Как сделать правильный переход в htaccess?

    shambler81
    @shambler81 Куратор тега htaccess
    известная проблемма, решается достаточно просто
    не
    RewriteRule ^link/(.*)$ link.php?link=$1 [PT,L,QSA]

    а
    RewriteRule ^link/(.*)$ link.php\?link=$1 [PT,L,QSA]

    Мат часть батенька ;)

    теперь забегая вперед, в случае когда редирект со страницы с GET пармметром: - он не является частью урла не видет RewriteRule
    Для этого используется двухуровневя конструкция с RewriteCond
    И если бы нужно было сделать редирект в обратную сторону.

    RewriteCond %{QUERY_STRING} (^|&)link\=\$1($|&)
    RewriteRule ^link\.php$ /link/? [L,R=301]

    Хрень по краям гет парметра это и или в случае если гет не один.

    Ну и на последок вкусняшка
    https://donatstudios.com/RewriteRule_Generator
    Ответ написан
  • Как настроить права в apache, для доступа к папке public_html?

    shambler81
    @shambler81 Куратор тега Linux
    И так немного теории
    777
    1.Полный доступ владельцу
    2. полный доступ доверительной группе
    3. всем остальным тоже все
    смотирм скриншот смотрим внимательно
    Linux-File-Listing.pngwww.tecmint.com/wp-content/uploads/2014/10/Linux-F...
    На данном скриншоте
    Владелец root
    Группа root
    и остальные
    У вас скорее всего группа и юзер не соответствуют юзеру и группе вашего веб сайта в результате апачь попадает как
    "все остальные" и ниче не может сделать
    решение проблемы
    chown -R user:group /var/www/site.ru/
    Соответственно ваш юзер и групаа апача
    Ответ написан
  • Почему localhost бесконечно загружается при отправке email.?

    Ну может логи дашь ?
    Ответ написан
    Комментировать