首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用具有多个域的Yourls URL短程序的一个实例

使用具有多个域的Yourls URL短程序的一个实例
EN

Stack Overflow用户
提问于 2014-10-16 00:30:33
回答 2查看 2.3K关注 0票数 2

我一直在寻找一种在多个域中使用尤尔斯的方法,主要问题是在配置Yourls时,您需要在config.php文件中提供域名(YOURLS_SITE常量)。使用指向Yourls的实际多个域配置一个域会导致意外行为。

我四处张望,找不到一个快速的黑客

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-16 00:30:33

我找到了这个快速和肮脏的解决方案,并认为它可能对某人有用。

在config.php文件中,我将常量定义更改为基于$_ server‘’HTTP_HOST‘的值,因为在设置此头的服务器之前有一个代理,您也可以在您的Apache服务器上定义虚拟主机,并且它应该使用相同的方式(可能您需要使用$_ server 'SERVER_NAME’)。

因此,在config.php中,我改变了:

代码语言:javascript
复制
define( 'YOURLS_SITE', 'http://domain1.com');

代码语言:javascript
复制
if (strpos($_SERVER['HTTP_HOST'],'domain2.com') !== false) {
        define( 'YOURLS_SITE', 'http://domain2.com/YourlsDir');

        /* domain2 doesn't use HTTPS */
        $_SERVER['HTTPS']='off';

} else {
        define( 'YOURLS_SITE', 'https://domain1/YourlsDir');

        /* domain1 always uses HTTPS */
        $_SERVER['HTTPS']='on';

}

Note1:如果Yourls位于html根目录中,您可以从URL Note2中删除/YourlsDir : YOURLS_SITE中的url不能以/结尾

希望这能帮助到其他人

票数 2
EN

Stack Overflow用户

发布于 2015-03-27 23:43:18

我会用这句话在config.php..。

代码语言:javascript
复制
define('YOURLS_SITE', 'http://' . $_SERVER['HTTP_HOST'] . '');

(如果适用,请注意添加任何/subdirectory或其他任何内容)

然后,只要您的apache主机配置是正确的,指向此目录的任何域或子域都可以工作。不过,请记住,任何重定向都将适用于任何域,因此domain.one/重定向==域。

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

https://stackoverflow.com/questions/26394367

复制
相关文章

相似问题

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