【发布时间】:2011-06-15 19:22:16
【问题描述】:
我们有一个在 Symfony 上运行的网站,它是由比我更有能力的人开发的。然而,我在 WordPress 方面非常称职,并将在网站上安装博客。
目前,站点的根目录在 Symfony 上运行,但我希望 WordPress 接管而无需触及 Symphony 核心。本质上,我想将 WordPress 安装在 www 目录的子目录中,例如 www/wordpress/ 并将 htaccess 指向该目录作为我域的根目录。但是,我还想使用 Symfony 安装的一个功能,我们称之为myfeature。当我转到 mydomain.com/myfeature/ 时,我希望 htaccess 指向由 Symphony 运行的 mydomain.com/index.php/myfeature。
这是我当前的 .htaccess 文件的样子。
<IfModule mod_rewrite.c>
RewriteEngine On
# we skip all files with .something
RewriteCond %{REQUEST_URI} \..+$
RewriteCond %{REQUEST_URI} !\.html$
RewriteCond %{REQUEST_URI} !\.php
#RewriteCond %{REQUEST_URI} !\.php
RewriteRule .* - [L]
# we check if the .html version is here (caching)
RewriteRule ^$ /index.html [QSA]
RewriteRule ^([^.]+)$ /$1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
# no, so we redirect to our front web controller
RewriteRule ^(.*)$ /index.php [QSA,L]
# hidden frontoffice controller
RewriteRule ^index\.php/(.*)$ /index.php [QSA,L]
# fo controllers
RewriteRule ^frontend\.php/(.*)$ /frontend.php [QSA,L]
RewriteRule ^frontend_dev\.php/(.*)$ /frontend_dev.php [QSA,L]
</IfModule>
谢谢
【问题讨论】:
-
Symfony 通常为 Apache
VirtualHost设置中的供应商 Web 内容定义至少一个Alias-- 请参阅Web Server Configuration on this page -- 您的站点是这样设置的吗?如果是这样,您是否可以在该级别为 WordPress 添加一个类似的别名?可能会让您不必混合和匹配 Symfony 和 WordPress .htaccess 规则。
标签: wordpress mod-rewrite symfony1