- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева

Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Сейчас так, но вроде как ИФ рекомендуют не использовать, как можно оптимизировать?
Важно чтобы был редирект на https без www
listen 80;
listen 443 ssl http2;
server_name site.ru www.site.ru;
if ($scheme = http) {
return 301 https://$server_name$request_uri;
}
if ($host ~* www\.(.*)) {
set $host_without_www $1;
rewrite ^(.*)$ https://$host_without_www$1 permanent;
}
так не рекомендуют использовать в том случае, если после разворачивания условий получается две большие простыни конфига.
но вообще делают разные секции server- для ввв, для http и т.п., в которых сразу редирект на правильный адрес. тогда будет без всяких ифов и максимально оптимально. но не так красиво...
У мну так:
Хотя, наверно, можно и без "location /" в первом server.
Спасибо, а почему IF стараются не использовать? Он что медленнее обрабатывается?
Я к тому, если работает можно не трогать или все равно лучше заменить?
в вашем примере IF использовать можно.
не рекомендуется его использовать в сложных конфигурациях, когда, к примеру, вы сначала устанавливаете какую-то переменную, а потом в различных местах IF-ом делается тот или иной набор дайствий тоже ифом...
связанно это с тем, что nginx динамически не парсит каждое условие во время работы, а разворачивает все условия своеобразным препроцессором в несколько отдельных конфигураций.
из-за этого получаются жуткие простыни в конфиге которые часто работают совсем не так, как мы того ожидаем.
блин. мне это трудно это разъяснить. погуглите, где-то были примеры. а так же можно врубить дебаг и своими глазами увидать во что превращаются ваши ИФ-ы и реврайты...
server {
listen xxx.xxx.xxx.xxx:80;
listen [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:80;
server_name www.site.ru;
server_name site.ru;
return 301 https://site.ru$request_uri;
}
server {
listen xxx.xxx.xxx.xxx:443 ssl http2;
listen [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]:443 ssl http2;
server_name site.ru;
et cetera.........
}
а все ифы - в морг
https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/