fix #390
fix #430

add constants __TYPECHO_URL_PREFIX__ to custom global url prefix
This commit is contained in:
joyqi 2016-01-26 17:50:26 +08:00
parent 87a0479324
commit ed974cd9fe
2 changed files with 8 additions and 3 deletions

View File

@ -218,9 +218,13 @@ class Typecho_Request
public static function getUrlPrefix()
{
if (empty(self::$_urlPrefix)) {
self::$_urlPrefix = (self::isSecure() ? 'https' : 'http') . '://'
. (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME'])
. (empty($_SERVER['SERVER_PORT']) || in_array($_SERVER['SERVER_PORT'], array(80, 443)) ? '' : ':' . $_SERVER['SERVER_PORT']);
if (defined('__TYPECHO_URL_PREFIX__')) {
self::$_urlPrefix == __TYPECHO_URL_PREFIX__;
} else {
self::$_urlPrefix = (self::isSecure() ? 'https' : 'http') . '://'
. (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME']
. (empty($_SERVER['SERVER_PORT']) || in_array($_SERVER['SERVER_PORT'], array(80, 443)) ? '' : ':' . $_SERVER['SERVER_PORT']));
}
}
return self::$_urlPrefix;

View File

@ -372,6 +372,7 @@ class Widget_Options extends Typecho_Widget
/** 动态获取根目录 */
$this->rootUrl = $this->request->getRequestRoot();
if (defined('__TYPECHO_ADMIN__')) {
/** 识别在admin目录中的情况 */
$adminDir = '/' . trim(defined('__TYPECHO_ADMIN_DIR__') ? __TYPECHO_ADMIN_DIR__ : '/admin/', '/');
$this->rootUrl = substr($this->rootUrl, 0, - strlen($adminDir));
}