相关疑难解决方法(0)

从URL获取子域

首先从URL获取子域很容易.

http://www.domain.example
Run Code Online (Sandbox Code Playgroud)

扫描第一个时间段然后返回"http://"之后的任何内容......

然后你记得

http://super.duper.domain.example
Run Code Online (Sandbox Code Playgroud)

哦.所以,你想,好吧,找到最后一个时期,回过头来获取一切!

然后你记得

http://super.duper.domain.co.uk
Run Code Online (Sandbox Code Playgroud)

而你又回到了原点.除了存储所有顶级域名列表外,任何人都有任何好主意吗?

subdomain dns url parsing

100
推荐指数
4
解决办法
4万
查看次数

Laravel 5在任何域上的子域路由

在laravel 5应用程序中,我试图在不知道域的情况下为子域创建路由.

Route::group(array('domain' => 'subdomain.domain.tld'), function() {
    Route::get('/', 'testController@getTest2');
});
Route::get('/', 'testController@getTest1');
Run Code Online (Sandbox Code Playgroud)

这种路由工作,我得到了subTmain的getTest2()和没有子域调用的getTest1().

现在,我希望这可以使用通配符域,但不向控制器发送参数,因此dev环境中的应用程序可以在任何域上.(我也考虑使用.env存储域名,但这对于路由来说似乎太麻烦了)

我试过了

array('domain' => 'subdomain.{domain}.{tld}')
Run Code Online (Sandbox Code Playgroud)

这需要控制器方法的参数.我试过了

array('domain' => 'subdomain.{domain?}.{tld?}')
Run Code Online (Sandbox Code Playgroud)

这不需要参数,但无论如何都要发送它们,所以我的实际路由参数会被移动.

我也看过http://laravel-tricks.com/tricks/dynamic-subdomain-routing,但我不喜欢在过滤器中处理我的域名的想法.

有没有其他方法可以在处理路由组后忽略通配符域?

subdomain dns routing laravel laravel-5

9
推荐指数
2
解决办法
6896
查看次数

Symfony2 DI服务容器优先级/流量

故事

我们以此请求https://nike.awesomedomainname.com/为例.我需要一个可以获取的服务nike.


我现在有什么

我有一个从服务器获取路由器密钥的服务@request_stack.让我们使用公司作为路由器密钥.

我的主要路线如下;

<import host="{company}.domain.{_tld}" prefix="/" schemes="https" resource="@ExampleBundle/Resources/config/routing.xml">
    <default key="_tld">%app_tld%</default>
    <requirement key="_tld">com|dev</requirement>
    <requirement key="company">[a-z0-9]+</requirement>
</import>
Run Code Online (Sandbox Code Playgroud)

所以我写了这个服务来获取密钥并搜索公司;

...

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RequestStack;

class CompanyContextRequest {

    protected $request;
    protected $companyRepository;

    public function __construct(RequestStack $requestStack, CompanyRepository $companyRepository) {
        $this->request = $requestStack->getMasterRequest();
        $this->companyRepository = $companyRepository;
    }

    public function getCompany()
    {
        if (null !== $this->request)
        {
            $company = $this->request->attributes->get('company');
            if (null !== $company)
            {
                return $this->companyRepository->findOneBy([
                    'key' => $company
                ]);
            }
        }
    }

    ....

}
Run Code Online (Sandbox Code Playgroud)

和服务xml定义;

<service …
Run Code Online (Sandbox Code Playgroud)

dependency-injection request symfony

9
推荐指数
1
解决办法
790
查看次数

检测用户是否在子域中,然后使用PHP添加变量?

我想知道如何创建一个PHP IF语句来检测用户是否正在加载某个URL.在我的情况下它是:

www.design.mywebsite.com
Run Code Online (Sandbox Code Playgroud)

IF语句需要覆盖整个子域,EG也必须检测到URL:

www.design.mywebsite.com/filename.php
Run Code Online (Sandbox Code Playgroud)

一旦建立了IF语句,我想添加一个PHP变量.所以它可能会帮助别人,让我们称之为:

$myvariable = "Hey there! You're on my subdomain";
Run Code Online (Sandbox Code Playgroud)

总结 一下:最终的代码应该是这样的......

<?php
  if //Code to detect subdomain// {
    $myvariable = "Hey there! You're on my subdomain";
  }
?>
Run Code Online (Sandbox Code Playgroud)

php variables subdomain detection

4
推荐指数
1
解决办法
6512
查看次数

如何使用PHP获取第一个子域?

我有一个dev.example.com带有通配符子域的静态域,如此*.dev.example.com.

我需要检测当前通配符子域的名称.所以,如果我正在浏览sub.dev.example.com如何获得"sub"?

$env_domain = dev.example.com;
$subdomain = array_shift( explode( '.', $_SERVER['HTTP_HOST'] ) ) .'.'. $env_domain;
echo $subdomain;
Run Code Online (Sandbox Code Playgroud)

目前,这将返回dev.我需要它回来sub.

我认为这里最好的做法是返回最低级别的域(第一个子域).

请注意,我没有解析URL,而是解析给定的域.

php subdomain

3
推荐指数
1
解决办法
1万
查看次数

如何使用php获取URL主机

如果我有以下网址,我想获取任何网址的主机名

$url = "http://www.google.com";
Run Code Online (Sandbox Code Playgroud)

那么我想只得到google点后面.和扩展点之前的内容,.以便它可以应用于所有类型的网址.

所以结果应该是google!我认为这可能需要正则表达式或以某种方式任何想法如何做,谢谢.

php regex url

1
推荐指数
1
解决办法
3861
查看次数

试图获取PHP代码来创建子域

我正在尝试找到一个PHP代码来创建子域并为我的用户自动安装子帐户的cms.这个子域名不会只是我正在制作的cms.

php subdomain content-management-system

-3
推荐指数
1
解决办法
327
查看次数