在本地主机上工作时的相对 URL [关闭]
Posted
技术标签:
【中文标题】在本地主机上工作时的相对 URL [关闭]【英文标题】:Relative URLs when working on localhost [closed] 【发布时间】:2019-01-03 11:55:36 【问题描述】:从现在开始,我就有了一个习惯——直接在实时域或子域上工作。现在我发现了在 localhost 上工作的魅力和速度。我在 Windows 机器上使用 Wamp 服务器。
我的项目存储在 C:/wamp64/www/[project_name]
我一直在使用相对 URL,无论是在源文件中还是直接在我的 WordPress 网站中。例如,使用此 URL 获取图像:“/wp-content/uploads/2018/image.png”适用于每个域,页面或文章也是如此。
但是在 localhost 上,这个 URL 指向 C:/wamp64/www/wp-content/...,所以我必须使用这个 URL:“/project_name/wp-content/...”。但是,它在迁移到活动域后不起作用。
我尝试运行 SQL REPLACE 查询,但仍有大量 URL 指向本地目录(主要是存储在主题设置中的那些)。
使用相对 URL 的最佳方法是什么,既适用于本地主机服务器,也适用于实时域?
【问题讨论】:
我更喜欢在整个项目中使用<base>
标签。您只需要在迁移到服务器时更新基础。
只需更改本地 WP VirtualHost (httpd-vhosts.conf) 的 docroot 以使本地和实时的相对目录结构相同,然后您可以继续使用以 / 一切都很好。
【参考方案1】:
尝试使用相对路径,但以这种方式:“../wp-content/uploads/2018/image.png”
不要以“/”开头的相对路径,因为这意味着您的网站将位于路径顶部:“http://Examlple.com”。由于 Wordpress 可以安装在子路径中,它在“http://Example.com/OtherSite/”中不起作用。
因此,请始终考虑相对于实际页面而不是首页。
【讨论】:
【参考方案2】:听起来您在 WAMP 中的虚拟主机设置存在问题。
Guide to setup virtual host
设置好虚拟主机后,您可以将文档根目录设置为您想要的任何 URL。这将允许您为本地使用特定名称(即 kritianfilo.local),而不是每次都使用完整路径。这也将解决有关相对 URL 的问题,因为所有内容都将与您在虚拟主机设置中设置的文档根目录相关
【讨论】:
太棒了,就像一个魅力!我是新手,抱歉。 不用道歉,我们都是这样学习的!【参考方案3】:一种方法是创建一个 config 或 sys 属性文件,其中包含所有与系统相关的变量,并在需要时由您的应用程序查询。
在您的 localhost 环境中,您可以插入 WAMP/Windows 绝对路径,在您的 dev/prod 环境中,您可以使用相对路径(或绝对路径)。
工作正常,但您必须记住为每次部署设置正确的值。
【讨论】:
以上是关于在本地主机上工作时的相对 URL [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在本地主机上使用 htaccess 制作 seo url? [关闭]