首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >子文件夹中的Zend Framework

子文件夹中的Zend Framework
EN

Stack Overflow用户
提问于 2009-10-11 14:39:44
回答 2查看 3.9K关注 0票数 0

我在一个子文件夹中安装了一个Zend Framework应用程序,如下所示:

代码语言:javascript
复制
www.mydomain.com/temp/zend-application/

现在的问题是所有的样式表、javascript文件以及所有的链接都使用相对路径,例如:

代码语言:javascript
复制
/css/styles.css
/js/jquery.js
/controller/action

这些内容转到主域,如下所示:

代码语言:javascript
复制
www.mydomain.com/css/styles.css
www.mydomain.com/js/jquery.js
www.mydomain.com/controller/action

那么如何让它在该子文件夹中工作呢?

我的.htacces文件现在看起来像这样:

代码语言:javascript
复制
RewriteEngine On

# Exclude some directories from URI rewriting
#RewriteRule ^(dir1|dir2|dir3) - [L]

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

编辑:我已经使用前端控制器的setBaseUrl()方法解决了这个问题。现在的问题是如何编辑我的.htaccess文件。

EN

回答 2

Stack Overflow用户

发布于 2009-10-11 15:01:42

最好的解决方案是在您的应用程序中使用set a BaseUrl。如果您在.htaccess中设置了RewriteBase,应该会自动检测到这一点。路由器和其它组件知道此设置,可以生成适当的链路。

有一个view helper可以让链接到资产变得更容易。

或者,您可以在文档头中使用标记来修复这些链接。

代码语言:javascript
复制
<html>
<head>
<base href="http://www.mydomain.com/temp/zend-application/">
</head>

http://www.w3schools.com/TAGS/tag_base.asp上进一步阅读

票数 2
EN

Stack Overflow用户

发布于 2009-10-11 18:33:59

我肯定会使用baseUrl()视图助手,并将其添加到CSS和JS的路径中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1550840

复制
相关文章

相似问题

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