簡體   English   中英

用於Wordpress多站點的Caddy配置

[英]Caddy configuration for Wordpress multisite

我正在嘗試使用多站點設置一個Wordpress網站:

  • example.com

  • example.com/fr

使用以下Caddyfile:

example.com:80 {
    redir https://www.example.com{uri}
}

www.example.com:80 {
    root /app/public
    gzip

    fastcgi / 127.0.0.1:9000 {
        ext .php
        split .php
        index index.php
    }

    rewrite {
        regexp ^/[_0-9a-zA-Z-]+(/wp-.*)
        to {path} {path}/ {1}
    }

    rewrite {
        regexp ^/[_0-9a-zA-Z-]+(/.*\.php)$
        to {path} {path}/ {1}
    }

    rewrite {
        if {path} not_match ^\/wp-admin
        to {path} {path}/ /index.php?_url={uri}
    }

    log stdout
    startup /usr/sbin/php-fpm7.0 -F -O &
}

當我到達/fr/wp-admin/ ,我得到301到/wp-admin/

有人知道如何解決這個問題嗎?

這是你表示的:

rewrite {
    regexp ^/[_0-9a-zA-Z-]+(/wp-.*)
    to {path} {path}/ {1}
}

在您的情況下,使用請求/fr/wp-admin/將嘗試提供服務:

  1. {path} = /fr/wp-admin/

  2. {path}/ = /fr/wp-admin/

  3. {1} = /wp-admin/ ,這是括號中捕獲的第一個塊

含義Caddy在/fr之后找不到admin,或者之后沒有重定向屬性,具體取決於你的目標。

這個球童配置適合我。 希望這可以幫助。

rewrite {
    regexp ^(/[^/]+)?(/wp-.*)
    to {2}
}

rewrite {
    regexp ^(/[^/]+)?(/.*\.php)
    to {2}
}

rewrite {
    if {path} not_match ^\/wp-admin
    to {path} {path}/ /index.php?{query}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM