Nginx

將索引頁面請求重寫到子目錄及其頁面

  • May 9, 2020

我有一個 XenForo 論壇,為該網站提供支持。我還在 XF 的子目錄中安裝了 WordPress。這是讓一個名為 XPress 的外掛工作的必要條件,這樣我就可以集成兩者。

問題是沒有一種簡單的方法可以讓 WP 安裝 /wp 進入首頁。我在這里工作了一半:

   location / {
       rewrite ^/$ /wp/ last;
       index index.php index.html index.htm;
       try_files $uri $uri/ /index.php?$uri&$args;
   }

這種“某種”有效。首頁現在列出來自 /wp 的文章。但是,僅此而已。點擊文章會導致 /wp/ 並在 XF 一側返回 404。這是另一個嘗試:

   location / {
       rewrite ^/$ /wp/ last;
       index index.php index.html index.htm;
       try_files $uri $uri/ /index.php?$uri&$args /wp/index.php?$uri&$args;
   }

哪個效果很好……如果我想讓 wordpress 控製網站。如果我點擊一個標題,它會轉到 mydomain.com/,這是完美的,但論壇的其餘部分不起作用。

所以,我想我想要的是:

  • 僅對於根頁面,重寫為/wp.
  • 可能:重寫/wp/<title>/<title>
  • 確保/wp/重寫到 / 如果去它但/wp/wp-admin仍然有效。

可能的?

location /塊分成三個:

location / {
   try_files $uri $uri/ /index.php?$uri&$args;
}
location = / {
   rewrite ^ /wp/ last;
}
location /wp/ {
   try_files $uri $uri/ /wp/index.php;
}

引用自:https://serverfault.com/questions/1016433