Wordpress 子目录中不同的lighttpd重写规则

Wordpress 子目录中不同的lighttpd重写规则,wordpress,url-rewriting,lighttpd,subdirectory,Wordpress,Url Rewriting,Lighttpd,Subdirectory,我在获取特定子目录(不同于webroot)的重写规则时遇到了一些问题,我不知道应该把它们放在哪里 /var/www/(包含WordPress的webroot) /var/www/subdirectory(包含其他需要自己重写规则的应用程序) 以下规则适用于webroot目录(/var/www,或)中的WordPress: 然后,我有第二个应用程序,它位于webroot的子目录(/var/www/subdirectory,or)中,具有以下规则: url.rewrite = ( "(ind

我在获取特定子目录(不同于webroot)的重写规则时遇到了一些问题,我不知道应该把它们放在哪里

/var/www/(包含WordPress的webroot) /var/www/subdirectory(包含其他需要自己重写规则的应用程序)

以下规则适用于webroot目录(/var/www,或)中的WordPress:

然后,我有第二个应用程序,它位于webroot的子目录(/var/www/subdirectory,or)中,具有以下规则:

url.rewrite = (
    "(index.php|test.php|favicon.ico)" => "/$1",
    "(css|files|img|js)/(.*)" => "/$1/$2",
    "^([^\?]*)(\?(.+))?$" => "/index.php?url=$1&$3",
)
我需要的是,上面的第一组重写规则应用于除上述#排除规则(以及/子目录)中的其他目录之外的所有目录,然后第二组规则仅应用于/子目录

我从网上某个地方的博客上获得了WordPress的第一套规则,任何规则都可能不是我所需要的(关于匹配“mywebsite.com”,可能可以简化)

我在谷歌上搜索了多种变体(大多数只是在有点关联的随机论坛帖子的引导下在黑暗中捅刀子),但我就是不知道该怎么做

那么,在维护根目录的Wordpress规则的同时,如何将第二组规则应用于子目录呢


注意:我无法访问子域(那太容易了)。

我不太确定您想要表达什么-我将解释您当前的规则集的作用

不要使用此选项,请用户重写一次

url.rewrite = (
将任何index.php和test.php(甚至foo test.php)映射回webroot

"(index.php|test.php|favicon.ico)" => "/$1",
"(css|files|img|js)/(.*)" => "/$1/$2",
将url中包含css、文件、tmp或js的任何子文件夹或文件重写回webroot

"(index.php|test.php|favicon.ico)" => "/$1",
"(css|files|img|js)/(.*)" => "/$1/$2",
现在,这将匹配webroot中的任何内容(没有子目录!),并保留get请求

"^([^\?]*)(\?(.+))?$" => "/index.php?url=$1&$3",
)
更新 这应该可以(未经测试)


谢谢你的回复!我更新了这个问题以增加一些清晰度(希望如此)。基本上,第一组规则需要应用于webroot“/”排除某些目录(根据“#排除…”包括/子目录后的行),然后第二组规则只应用于/子目录。非常感谢您的帮助。相应地更新(用实际目录替换subdir)这是1/2的工作方式,它正在重写页面本身,但css和图像没有被重写。我已尝试在前两行中向$0添加/subdir/,但似乎不起作用。您是否正确地声明了css和图像文件作为此类文件处理?如果您只是遇到样式问题,这是一个常见问题。如果你真的有这些,我有点困惑剩下的是什么。我还发现了上面的一个小错误,我已经应用了更新后的一组规则,但是css/images/js仍然没有加载。你说申报是什么意思?