Поддержка Проблемы и решения не работают внутренние страницы

  • Добрый день! возникла проблемка с сайтом. Главная и админка отображаются норм, при переходе на внутренние страницы происходит редирект такого вида
    http://http/hotelelisa.ru/nomera-i-ceny

    есть подозрения что то не то с конфигом nginx

    server {
            ## Your website name goes here.
            server_name hotelelisa.ru www.hotelelisa.ru hotelisa.ru www.hotelisa.ru;
            ## Your only path reference.
            root /var/www/hotel-elisa;
            ## This should be in your http block and if it is, it's not needed here.
            error_log /var/log/nginx/errorHE.log;
            access_log /var/log/nginx/accessHE.log;
            index index.php;
    
            location = /favicon.ico {
                    log_not_found off;
                    access_log off;
            }
    
            location = /robots.txt {
                    allow all;
                    log_not_found off;
                    access_log off;
            }
    
            location / {
                    # This is cool because no php is touched for static content.
                    # include the "?$args" part so non-default permalinks doesn't break when using query string
                    try_files $uri $uri/ /index.php?$args;
            }
    
            location ~ \.php$ {
                    #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
                    include fastcgi.conf ;
                    fastcgi_intercept_errors on;
                    fastcgi_pass unix:/var/run/sockets/hotelelisa.sock ;
    
            }
    
            location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                    expires max;
                    log_not_found off;
            }
    }

    перепробовал разные конфигурации, куда копать уже незнаю

Просмотр 15 ответов — с 16 по 30 (всего 36)
  • Модератор Yui

    (@fierevere)

    永子

    да или обьявите
    $document_root = /var/www/hotel-elisa;
    после $root

    -- Logs begin at Sat 2017-02-18 11:00:07 MSK, end at Wed 2017-02-22 11:06:00 MSK. --
    Feb 22 11:05:41 client.jet-mix.ru sudo[15962]: admin : TTY=pts/0 ; PWD=/etc/nginx/sites-available ; USER=root ; COMMAND=/etc/init.d/ngin
    Feb 22 11:05:41 client.jet-mix.ru sudo[15962]: pam_unix(sudo:session): session opened for user root by admin(uid=0)
    Feb 22 11:05:41 client.jet-mix.ru nginx[15973]: nginx: [emerg] unknown "root" variable
    Feb 22 11:05:41 client.jet-mix.ru nginx[15973]: nginx: configuration file /etc/nginx/nginx.conf test failed
    Feb 22 11:05:41 client.jet-mix.ru systemd[1]: nginx.service: control process exited, code=exited status=1
    Feb 22 11:05:41 client.jet-mix.ru systemd[1]: Failed to start A high performance web server and a reverse proxy server.
    Модератор Yui

    (@fierevere)

    永子

    чтото не так написали, извините с планшета тяжело много писать

    $root = папка;
    $document_root = папка;

    имя папки сами ставьте

    написал то правильно, может быть не там. это в файле конфигурации?
    /etc/nginx/sites-available/hotel-elisa

    Модератор Yui

    (@fierevere)

    永子

    да, в конфиге сервера

    -- Logs begin at Sat 2017-02-18 11:00:07 MSK, end at Wed 2017-02-22 11:20:03 MSK. --
    Feb 22 11:19:54 client.jet-mix.ru sudo[16212]: admin : TTY=pts/0 ; PWD=/etc/nginx/sites-available ; USER=root ; COMMAND=/etc/init.d/nginx restart
    Feb 22 11:19:54 client.jet-mix.ru sudo[16212]: pam_unix(sudo:session): session opened for user root by admin(uid=0)
    Feb 22 11:19:54 client.jet-mix.ru nginx[16227]: nginx: [emerg] unknown directive "document_root" in /etc/nginx/sites-enabled/hotel-elisa:5
    Feb 22 11:19:54 client.jet-mix.ru nginx[16227]: nginx: configuration file /etc/nginx/nginx.conf test failed
    Feb 22 11:19:54 client.jet-mix.ru systemd[1]: nginx.service: control process exited, code=exited status=1
    Feb 22 11:19:54 client.jet-mix.ru systemd[1]: Failed to start A high performance web server and a reverse proxy server.

    не позволяет переопределить document_root

    конфигурация:

    server {
            server_name .hotelelisa.ru ;
    
            root /var/www/hotel-elisa;
            document_root /var/www/hotel-elisa ;
            error_log /var/log/nginx/errorHE.log;
            access_log /var/log/nginx/accessHE.log;
            location = /favicon.ico {
                    log_not_found off;
                    access_log off;
            }
            location = /robots.txt {
                    allow all;
                    log_not_found off;
                    access_log off;
            }
            location / {
                    index index.html index.php index.htm;
                    try_files $uri $uri/ /index.php?$args;
            }
    
            location ~ \.php$ {
                    if ( -f $request_filename ) {
                            fastcgi_pass unix:/var/run/sockets/hotelelisa.sock ;
                    }
                    fastcgi_index  index.php;
                    #fastcgi_param  SCRIPT_FILENAME  $root$fastcgi_script_name;
                    include        fastcgi.conf;
            }
            location ~* ^.+\.(woff|ttf|woff2|eot)$ { expires 180d; add_header Vary Accept-Encoding; gzip on; }
            location ~* ^.+\.(jpg|jpeg|png|ico|gif|swf)$ { expires 14d; }
            location ~* ^.+\.(css|js)$ { expires 14d; add_header Vary Accept-Encoding; gzip on; gzip_static on; }
    
    }
    Модератор Yui

    (@fierevere)

    永子

    а так
    set $document_root ‘/var/www/hotel-elisa’;

    у вас не совсем сиандартная или не новая стоковая конфигурация nginx

    Feb 22 11:48:09 client.jet-mix.ru sudo[16396]: admin : TTY=pts/0 ; PWD=/etc/nginx/sites-available ; USER=root ; COMMAND=/etc/init.d/nginx restart
    Feb 22 11:48:09 client.jet-mix.ru sudo[16396]: pam_unix(sudo:session): session opened for user root by admin(uid=0)
    Feb 22 11:48:09 client.jet-mix.ru nginx[16409]: nginx: [emerg] the duplicate "document_root" variable in /etc/nginx/sites-enabled/hotel-elisa:3
    Feb 22 11:48:09 client.jet-mix.ru nginx[16409]: nginx: configuration file /etc/nginx/nginx.conf test failed
    Feb 22 11:48:09 client.jet-mix.ru systemd[1]: nginx.service: control process exited, code=exited status=1
    Feb 22 11:48:09 client.jet-mix.ru systemd[1]: Failed to start A high performance web server and a reverse proxy server.
    Модератор Yui

    (@fierevere)

    永子

    https://ru.wordpress.org/support/topic/%d0%bd%d0%b5-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b0%d1%8e%d1%82-%d0%b2%d0%bd%d1%83%d1%82%d1%80%d0%b5%d0%bd%d0%bd%d0%b8%d0%b5-%d1%81%d1%82%d1%80%d0%b0%d0%bd%d0%b8%d1%86%d1%8b/#post-240189

    попробуйте еще раз первую предложенную мной конфигурацию, только fastcgi.conf
    include fastcgi.conf;
    замените на
    include fastcgi_params;

    этот файл должен быть там же где и fastcgi.conf
    они немного отличаются
    если что, то вот его содержимое

    
    fastcgi_param  HTTP_PROXY         "";
    fastcgi_param  QUERY_STRING       $query_string;
    fastcgi_param  REQUEST_METHOD     $request_method;
    fastcgi_param  CONTENT_TYPE       $content_type;
    fastcgi_param  CONTENT_LENGTH     $content_length;
    fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
    fastcgi_param  REQUEST_URI        $request_uri;
    fastcgi_param  DOCUMENT_URI       $document_uri;
    fastcgi_param  DOCUMENT_ROOT      $document_root;
    fastcgi_param  SERVER_PROTOCOL    $server_protocol;
    fastcgi_param  HTTPS              $https if_not_empty;
    fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
    fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
    fastcgi_param  REMOTE_ADDR        $remote_addr;
    fastcgi_param  REMOTE_PORT        $remote_port;
    fastcgi_param  SERVER_ADDR        $server_addr;
    fastcgi_param  SERVER_PORT        $server_port;
    fastcgi_param  SERVER_NAME        $server_name;
    fastcgi_param  REMOTE_USER            "$remote_user";
    fastcgi_param  REDIRECT_QUERY_STRING  "$query_string";
    fastcgi_param  REDIRECT_URL           "$request_uri";
    
    # PHP only, required if PHP was built with --enable-force-cgi-redirect
    fastcgi_param  REDIRECT_STATUS    200;
    
    • Ответ изменён 7 лет, 2 месяца назад пользователем Yui. Причина: ;

    где ее взять? и что с ней не так?
    на сервере работают сайты на bitrix, cs-cart а с WP такая вот лажа.
    может есть еще какие то варианты?

    nginx: [emerg] unknown «root» variable

    он не знает что за $root
    поменял на $document_root
    снова редиректит на http://http/hotelelisa.ru/akcii

    в fastcgi_params
    у меня нет этих строчек

    fastcgi_param  REMOTE_USER            "$remote_user";
    fastcgi_param  REDIRECT_QUERY_STRING  "$query_string";
    fastcgi_param  REDIRECT_URL           "$request_uri";

    остальное все так же
    их добавление особо ничего не поменяло

    • Ответ изменён 7 лет, 2 месяца назад пользователем serj42.
    Модератор Yui

    (@fierevere)

    永子

    
            location ~ \.php$ {
    if ( -f $request_filename ) {fastcgi_pass unix:/var/run/sockets/hotelelisa.sock ; }
    fastcgi_index  index.php;
                            fastcgi_param  SCRIPT_FILENAME  /var/www/hotel-elisa$fastcgi_script_name;
                            include        fastcgi_params; 
            }
    

    https://forum.nginx.org/list.php?20
    у меня уже варианты заканчиваются, это ссылка на официальный форум nginx

    не помогло ((
    уже думаю может в самом WP чего то наворотили. неск редиректов срабатывает

    спасибо Вам за помощь и потраченное время

    • Ответ изменён 7 лет, 2 месяца назад пользователем serj42.
    Модератор Yui

    (@fierevere)

    永子

    если только плагины или тема шалит
    попробуйте чистый вп поставить с такой же конфигурацией nginx

    другой вариант — поотключать все плагины и сменить тему на один из вариантов twenty

    PS: для тестирования конечно же

    • Ответ изменён 7 лет, 2 месяца назад пользователем Yui.
Просмотр 15 ответов — с 16 по 30 (всего 36)
  • Тема «не работают внутренние страницы» закрыта для новых ответов.