主目录中的Htaccess与子目录冲突

时间:2013-07-04 14:04:57

标签: wordpress .htaccess seo opencart

我正在为客户使用两种不同的开源系统。 在主目录中我安装了wordpress。 在子目录(/ shop)中,我安装了OpenCart 1.5.5

我希望在OpenCart中启用SEO网址但是当我启用此功能时,我的网址会变为: www.example.com/shop/category 然后来自wordpress的主要htaccess检查它是否知道wordpress中的类别和帖子并返回404.

如果有人为我找到解决方案,我会非常高兴! 谢谢你的努力!

来自Wordpress的HTACCESS:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

来自opencart的HTACCESS:

Options +FollowSymlinks
Options -Indexes

<FilesMatch "\.(tpl|ini|log)">
 Order deny,allow
 Deny from all
</FilesMatch>

RewriteEngine On
RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^download/(.*) /index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

2 个答案:

答案 0 :(得分:4)

将OpenCart RewriteBase中的.htaccess指令更改为

RewriteBase /shop/

答案 1 :(得分:2)

不确定这是否有效,因为我没有办法在本地进行测试。将Wordpress htaccess更改为:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_URI} !^/shop
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]