首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >重写锂/ apache中商店的规则

重写锂/ apache中商店的规则
EN

Stack Overflow用户
提问于 2013-03-29 15:11:43
回答 2查看 265关注 0票数 1

我安装了锂电池,所有的.htaccess都工作正常。

我需要在app/webroot/ OpenCart中安装购物车

我复制了所有文件,还将锂安装的根文件夹中的.htaccess文件更改为

代码语言:javascript
运行
复制
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteBase /
 RewriteRule    shop/(.*) /app/webroot/shop/$1 [L]
 RewriteRule    ^$ app/webroot/    [L]
 RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

不过,当我浏览http://domain.com/shop时,它会将我带到http://domain.com/app/webroot/shop/

在页面上出现错误:

代码语言:javascript
运行
复制
Exception
lithium\action\DispatchException (code 404)
Action `webroot` not found.

请帮我解决这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-29 17:24:06

您可以尝试执行以下操作:

代码语言:javascript
运行
复制
<IfModule mod_rewrite.c>
Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !/app/webroot/shop/? [NC]
RewriteRule  ^shop/(.*) /app/webroot/shop/$1    [L,NC]

RewriteCond %{REQUEST_URI} !/app/webroot/? [NC]
RewriteRule  ^$   /app/webroot/  [L,NC]

RewriteCond %{REQUEST_URI} !/app/webroot/? [NC]
RewriteRule  ^(.*) /app/webroot/$1     [L,NC]
</IfModule>
票数 1
EN

Stack Overflow用户

发布于 2013-05-13 04:48:39

问题是,你的最后一个“全部捕获”规则也将商店的所有请求重定向到锂,这是你不想要的。

尝尝这个

代码语言:javascript
运行
复制
Options +FollowSymlinks -MultiViews
RewriteEngine On

# Rewrite all URLs that start with /shop to /app/webroot/shop
RewriteRule  ^shop/.? /app/webroot/shop%{REQUEST_URI}    [L]

# Rewrite all URLs that don't start with /app/webroot/shop to /app/webroot
RewriteCond %{REQUEST_URI} !^/app/webroot/shop
RewriteRule .? /app/webroot%{REQUEST_URI}     [L]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15698986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档