【问题标题】:Can/should I use mod_rewrite to change the paths of links on a local Dev environment? (Kohana)我可以/应该使用 mod_rewrite 更改本地开发环境中链接的路径吗? (小花)
【发布时间】:2011-06-11 08:35:49
【问题描述】:

第一次在大型项目上进行合作:我可能有点不知所措。

当我尝试在本地机器上运行代码时,网站上的所有链接都断开了。

/localhost/dir/file 需要变成/localhost/appname/html/dir/file

我更改了 APPPATH、SYSPATH &tc 以反映目录更改 & 现在一切正常,但 html/css/js 链接仍然断开。我想我需要更改 .htaccess 和 mod_rewrite 以将 appname/html/ 附加到链接中,但也许不需要?


编辑:我能够使用 html <base> 标记使一些链接正常工作,仍然无法正常工作的链接似乎是使用 Kohana 类创建的,所以我猜在某个地方我仍然需要一个变量改变。

【问题讨论】:

  • 为什么你有appname/html?您可以添加主机名并配置 apache 以使其指向您的子目录吗?
  • 也许吧?可能是的,现在我想起来了。那将是最好的解决方案。我太傻了。

标签: php apache mod-rewrite kohana


【解决方案1】:

我认为正确的做法是使用 url::base() 生成链接。这将使应用程序对更改更具弹性。但是鉴于您正在处理现有代码,使用 mod_rewrite 是一种实用的方法,这没有错。

【讨论】:

  • 我是这么认为的,但我似乎无法让它工作。它应该影响所有链接:css & js 以及锚标签 &tc?
  • 您可能需要更改 kohana 的配置文件,以便 url::base() 知道您对基本站点 URL 的更改。
【解决方案2】:

我通过将这个 JS 添加到 ready 函数来让它工作:

$( "[href]" ).attr("href",function(){ return "http://kohana/index.php" + $( this ).attr( "href" ); });

糟糕,我知道。如果有人有更好的解决方案,我会很高兴。

【讨论】:

    猜你喜欢
    • 2016-01-23
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多