Dmitriy_2014

Dmitriy_2014
Рейтинг
370
Регистрация
01.07.2014
Интересы
Веб-технологии
2on2 #:
Нужно ответ заверить у нотариуса, чтобы вы не повторяли свои вопросы?
Не надо ни у кого ничего заверять :-), я все понял, спасибо!
Sitealert #:
Здесь ключевое слово "если". Походу, нихрена ты не понимаешь в алгоритмах разработки.
Так я и не разработчик, я просто любитель, и да не шарю в алгоритмах, но знаешь ты походу прав создатели плагина то разработчики и шарят в алгоритмах и именно для этого делают эту проверку предостерегая недалеких пользователей таких как я, но по факту я думаю это лишняя проверка (Для меня.). Вы бы лучше подсказал сильно ли она влияет на скорость с ней или без неё?

Я там вначале не досказал…

В целом о чем я:

Вот есть допустим плагин хлебных крошек для WordPress Breadcrumb NavXT, авторы говорят включи плагин и вставь в свой шаблон этот код:

<?php if(function_exists('bcn_display'))

{

bcn_display();

}?>

И будут у тебя хлебные крошки, ну это к примеру. Они рекомендуют выполнять эту проверку if function_exists.

Но я ведь и так знаю, что если плагин включен, то функция работает, собственно почему не вызывать её без проверки напрямую.

<?php bcn_display(); ?>
foxi #:
Если знаете что функция есть то проверять ее не обязательно. А если ее вдруг не окажется - увидите ошибки в браузере или в логах и поставите недостающую функцию.

Так я вот и думаю, нужна ли эта проверка если я точно знаю, что эта функция работает и будет работать постоянно, зачем она… Мне кажется это делают разработчики тем и шаблонов чтобы если чё не было ошибки и функция просто не вызывалась, но мне это зачем если я точно знаю, что и зачем вызываю текущей функцией…

Было бы интересно узнать сильно ли напрягается интерпретатор при сравнении есть эта функция или нету этой функции. Ну то есть лучше вызывать напрямую или без разницы можно оставить и сравнение.
lealhost #:

Да, все будет работать.

Хорошо, спасибо, а то без этого файла сайт просто так работать не будет, там и редиректы и от WordPress что-то и еще куча всякой лабуды.
lealhost #:

Будет при условии проксирования на Apache.

Просто покажите конфигурацию NGINX блок server { } , замените адрес сайта, если не хотите его здесь палить.

Надо только понимать, что все это настраивал не я, а специалисты из хостенговой компании.


server {
                server_name site.ru www.site.ru;
                listen XXX.XX.XX.XX;
                charset UTF8;
                index index.php;
                set $root_path /var/www/www/site.ru;
                location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
                        root $root_path;
                        access_log /var/nginx-logs/user isp;
                        access_log /var/httpd-logs/site.ru.access.log ;
                        error_page 404 = @fallback;
                }
                location / {
                        proxy_pass http://XXX.XX.XX.XX:8080;
                        proxy_redirect http://XXX.XX.XX.XX:8080/ /;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location ~* ^/(webstat|awstats|webmail|myadmin|pgadmin)/ {
                        proxy_pass http://XXX.XX.XX.XX:8080;
                        proxy_redirect http://XXX.XX.XX.XX:8080/ /;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location @fallback {
                        proxy_pass http://XXX.XX.XX.XX:8080;
                        proxy_set_header Host $host;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                        proxy_set_header X-Forwarded-Proto $scheme;
                        proxy_set_header X-Real-IP $remote_addr;
                }
                location ^~ /webstat/ {
                        auth_basic "Restricted area";
                        auth_basic_user_file /var/www/user/data/etc/5126789.passwd;
                        try_files $uri @fallback;
                }
                include /usr/local/ispmgr/etc/nginx.inc;
        }

Как я понимаю раз много слов proxy есть в конфиге :), значит он проксируется на Апач.

lealhost #:
Оставьте у апача только HTTP-порт и проксируйте на него, никаких 443 портов в конфиге апача быть не должно.
То есть допустим оставить Apache на 8080 порту, а виртуальный хост с 443 убрать, и включить в NGINX 443, а файл то .ahtaccess будет работать?
LEOnidUKG #:
Да установите себе уже панель, хоть бесплатную VestaCP или уж лучше FastPanel и ничего не надо делать и задавать уж такие вопросы.
Да есть у меня панель управления сервером, не хватает администратора и отдела IT :)
WebAlt #:
Не придётся, если nginx будет принимать запросы, раздавать статику, а скрипты перенаправлять на apache.

Так тут то я и не понимаю, когда я допустим подключаю сертификаты и делаю поддержку SSL в NGINX:

server {

            listen 443 ssl;

               server_name xxx.ru;

                 ssl_certificate /etc/ssl/xxx.crt;
                 ssl_certificate_key /etc/ssl/xxx.key;
        }

Перезагружаю сервер NGINX и он пишет - что ошибка и не запускается ну т.к. как я понял занят 443 порт и на нем работает Apache.

Так если я уберу работу Apache то файлы .htaccess не будут работать, и нужно будет настраивать все что там в nginx.conf, так я это понимаю.
lealhost #:

1. Не открывать порт 443 на Apache, сделать возможной работу только по HTTP-протоколу на внутреннем порту, закрытым извне.

2. В Nginx настроить TLS/SSL, указать сертификаты и проксировать до HTTP-порта Apache.

Если все происходит на одном сервере - это актуально, нет смысла шифровать подключение между NGINX и Apache в локальной сети.

Но мне все равно придется конвертировать правила из .htaccess(всякие редиректы и т.п.) в nginx.conf?
Всего: 1998