gpt4 book ai didi

php - Apache 服务器上的相对路径等

转载 作者:行者123 更新时间:2023-12-04 06:38:23 24 4
gpt4 key购买 nike

我真的被困在这里了。

我一次有两个问题:

首先,我的站点存储在一个子目录中(在本地开发和实时服务器上),因为我在多个站点上工作。 IE。

/Sites/www.mysite.com/(site files here)

当我提到我的网页中的文件时,我想引用我的 /images目录而不将每次出现都硬编码为 /www.mysite.com/images/myfile.jpg
有没有办法简单地重新定义服务器如何解释前导“/”?

问题二,关于PHP mod_rewrite

我有这套重写规则。目标是将 www.mysite.com/faq 变成 www.mysite.com/index.php?page="faq"
RewriteEngine On
RewriteCond %{REQUEST_URI} !mysite.com
RewriteRule (.*) mysite.com/$1
RewriteRule ^([a-zA-Z0-9_-]+)$ /mysite.com/index.php?site=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ /mysite.com/index.php?site=$1

当 url 以倒数第二个格式传递时,我没有问题(如上例所示)。但是,如果添加了尾随的“/”: www.mysite.com/faq/ ,我的外部脚本引用中断:(例如 src=js/script.js )...

最佳答案

要问没有。 1:

Apache 正在根据 DocumentRoot 解释前导斜杠或 Alias值(value)观

因此,如果您想让生活更轻松,请创建 VirtualServer有了这个

DocumentRoot "/Sites/www.mysite.com"

Apache documentation: DocumentRoot

Alias
Alias /mysite /Sites/www.mysite.com

Apache documentation: Alias

或使用路径相对寻址。

问题二:
RewriteEngine On
RewriteCond %{REQUEST_URI} !mysite.com
RewriteRule (.*) mysite.com/$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)$ /mysite.com/index.php?site=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ /mysite.com/index.php?site=$1 [L]

根据 netcoder建议。

关于php - Apache 服务器上的相对路径等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4588341/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com