Рейтинг:0

Настройте wordpress как подпуть, но в другом корне

флаг ua

Главный сайт: пример.com в /var/www/example.com.

Блог Wordpress: пример.com/блог в /var/www/блог.

Не могу заставить это работать.

сервер {
    слушать 80;

    имя_сервера пример.com;

    корень /var/www/example.com;

    # Добавьте index.php в список, если вы используете PHP
    index Index.html index.html index.htm index.nginx-debian.html;

    расположение ~* \.(ico|jpg|jpeg|png|gif|swf|css|json|txt|sd|html)$ {
            try_files $uri = 404;
            доступ_лог выключен;
            истекает через 1 день;
    }

    расположение ~* \.(js)$ {
        gzip_static включен;
        застежка-молния включена;
        try_files $uri = 404;
        доступ_лог выключен;
        истекает через 1 день;
    }


    местоположение/блог {
        псевдоним /var/www/blog/;
        #try_files $uri $uri/ /index.php?q=$request_uri;
        try_files $uri $uri/ @blog;

        расположение ~ \.php$ {
            fastcgi_split_path_info ^(.*\.php)(.*)$;
            try_files $uri = 404;
            включить /etc/nginx/fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
            fastcgi_pass unix:/run/php/php7.4-fpm.sock;
            #fastcgi_index index.php;

             #включить параметр fastcgi_param
            включить fastcgi_params;
        }
    }

    местоположение @блог {
            переписать ^/blog(.*) /blog/index.php?q=$1;
    }
}

За http://example.com/blog получил 403 Запрещено. Выглядит как псевдоним не работает с try_files.

Но даже http://example.com/blog/index.php не работает. Получил Файл не найден. .

Paul avatar
флаг cn
Я думаю, что это часто встречается в руководствах по WordPress, которые я видел: `location try_files $uri $uri/ /blog/index.php?$args;`.
Suvitruf - Andrei Apanasik avatar
флаг ua
@Paul, это на случай, если блог находится в подкаталоге.
Paul avatar
флаг cn
Удалите подкаталог: `location / { try_files $uri $uri/ /index.php?$args; }`
Richard Smith avatar
флаг jp
Замените alias на root /var/www; и используйте try_files $uri $uri/ /blog/index.php?$args;
Suvitruf - Andrei Apanasik avatar
флаг ua
@RichardSmith `try_files` не работает в этом случае для `http://example.com/blog`: `индекс каталога "/var/www/blog/" запрещен". Но `http://example.com/blog/index.php` работает.
Richard Smith avatar
флаг jp
Вы не добавили `index.php` в директиву `index`, поэтому он ищет `index.html` и не находит его. В качестве альтернативы вы можете поместить оператор `index index.php;` в блоке `location/blog`

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.