【问题标题】:Absolute paths on cakePHP 1.3cakePHP 1.3 上的绝对路径
【发布时间】:2013-06-14 08:29:50
【问题描述】:

我得到了一个网站来继续开发。问题是大部分路径都是这种形式:

<a href="/path/to/file">link</a>

我已经修改了其中一些,将它们变成:

<a href="<?=Route::url('path/to/file')?>">link</a> 如果我想将项目移动到像localhost/cakeproject/ 这样的子文件夹中,它可以正常工作。如果我将路径保留为原始形式并将项目保存在子文件夹中,则所有路径都将指向localhost/

真正的问题是项目太大,大约有 200 个文件路径错误。这样做的人构建项目的方式是,它只能在服务器的根目录上运行,而不能在子文件夹上运行。

有没有办法解决这个问题?有什么难点吗?

我认为手动更改路径是不可行的。

谢谢。

【问题讨论】:

    标签: php cakephp-1.3


    【解决方案1】:

    如果所有路径都被硬编码为绝对路径,那么最好的选择是在整个项目中查找/替换。

    一个好的 IDE 或文本编辑器应该能够毫不费力地处理它,只需确保您的代码首先处于源代码控制之下,这样任何错误都可以回滚。

    【讨论】:

    • 但是如何区分 =$some?> 和 '.$some.'??
    • 这就是正则表达式的用武之地。大多数旨在编码的 IDE 和文本编辑器都允许使用正则表达式进行搜索和替换
    • 你能引导我朝着好的方向发展吗?我不太擅长正则表达式。
    • 我想得越多,真的应该几乎是直接交换。不需要正则表达式。例如。 Absoulute = /var/www/http/myproject/app/ 只需找到 /var/www/http/myproject 并替换为您的新文件夹路径。
    • 为什么要不断更改文件夹名称?这在您的环境中具有更严重的问题。要么更改一次,要么更改一次并使用符号链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-24
    • 2011-05-18
    • 1970-01-01
    • 2012-10-16
    • 2016-11-19
    • 2012-01-11
    • 2010-09-15
    相关资源
    最近更新 更多