WordPress 的 permallink 需要 apache 的支持,wordpress 会自动生成一个 .htaccess 文件来给 apache 加 rewrite 规则,但是 lighttpd 的 rewrite 规则格式和 apache 不一样,而且好像不支持 .htaccess. 需要手动转换一下。 WordPress 生成的 .htaccess 规则大概是 RewriteBase /wordpress/ RewriteRule ^.*$ index.php [S=47] RewriteRule ^feed/(feed|rdf|rss|rss2|atom)/?$ /wordpress/index.php?&feed=$1 [QSA,L] RewriteRule ^(feed|rdf|rss|rss2|atom)/?$ /wordpress/index.php?&feed=$1 [QSA,L] 这样的 lighttpd 需要的 rewrite 规则大概是 url.rewrite = ("^/wordpress/feed/(feed|rdf|rss|rss2|atom)/?$" => “/wordpress/index.php?&feed=$1”, “^/wordpress/(feed|rdf|rss|rss2|atom)/?$” => “/wordpress/index.php?&feed=$1”, “^/wordpress/page/?([0-9]{1,})/?$” => “/wordpress/index.php?&paged=$1” ) 这样的 内容和 Apache 的基本类似,就是把所有规则转换……
阅读全文