我有以下系统:
Windows Server '03
IIS 6(射击我)
PHP 5.2.14
Wordpress 3.0.1
WPML 1.8.1.2
我已将 Wordpress 添加到现有的高流量站点,在我们将调用的目录中
对于类似 mod_rewrite 的功能,我使用 Helicon 的 ISAPI_Rewrite 3.1.0.76。我正在使用它来启用 Wordpress 安装中的“漂亮”永久链接。唯一的规则是:
RewriteRule ^/wordpress/(?!index.php)(?!wp)([^.]*)$ /wordpress/index.php/$1 [I,L]
然而,我需要添加另一条规则,我的思考和抨击的双重策略都没有取得成果。
我的网站是一个完全双语的网站。没有不在以下两个子目录之一下的页面:
http://thehost/en/用于英语,以及
http://thehost/sp/西班牙语。
这是我想要维护的约定,即使对于 Wordpress 安装也是如此。我目前有一个有点被破解的 WPML(Wordpress 多语言插件)版本,它的工作原理是所有页面和帖子——不管是什么语言——在 URL 中都包含 /en/ 或 /sp/。这让我相信我非常接近——也许只有一个 RewriteRule!——让我的 Wordpress URL 符合与我网站的其他部分相同的 URL 约定。不过,如上所述,我的问题是我无法让它正常工作。
所以,如果我在我的 Wordpress 安装中的某个地方有这个 URL:
http://thehost/wordpress/en/2010/08/omg-this-post-is-in-english/
我怎样才能将其转换为
http://thehost/en/wordpress/2010/08/omg-this-post-is-in-english/
同时不会丢失 Wordpress 的永久链接?我已经设法将 /en/ 交换到正确的位置(^/en/wordpress/(.*) /wordpress/en/$1),但我无法让这两个规则很好地结合在一起。那是我的问题。好吧,这和其他一些不适合 stackoverflow.com 的内容。
谢谢你的时间。