Heim >Backend-Entwicklung >PHP-Tutorial >如何实现此urlrewrite功能?

如何实现此urlrewrite功能?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-06 20:39:461098Durchsuche

需求是这样
xxxx.com/controller/action => 改写为 controller.xxxx.com/action
入口文件已经是rewrite掉了,就是在这基础上再改写一次
非常着急 在线等各位大牛 拜谢。

这个是重写掉index.php的

<code>RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</code>

换个问法把 就是在开启泛解析的情况下 将控制器绑定为2级域名 如何实现
用的是phalcon框架 因为刚上手路由没完全弄懂
望各位不吝赐教

回复内容:

需求是这样
xxxx.com/controller/action => 改写为 controller.xxxx.com/action
入口文件已经是rewrite掉了,就是在这基础上再改写一次
非常着急 在线等各位大牛 拜谢。

这个是重写掉index.php的

<code>RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</code>

换个问法把 就是在开启泛解析的情况下 将控制器绑定为2级域名 如何实现
用的是phalcon框架 因为刚上手路由没完全弄懂
望各位不吝赐教

参考 http://docs.phalconphp.com/en/latest/reference/routing.html#hostname-c...

1.获取当前二级域名:

<code>php</code><code>/**
 * Detect sub domain for routing
 */
$sudomaininfo = explode('.',$_SERVER['HTTP_HOST']);
define('SUBDOMAIN', array_shift($sudomaininfo));
</code>

2,

<code>php</code><code> $router->add('/:action', array(
    'namespace'     => '.......',
    'controller'    => SUBDOMAIN,
    'action'        => 1
));
</code>

不知道你项目的具体的情况,我想更好的办法是做成Multiple modules的形式,根据SUBDOMAIN的体来设定

setBaseUri,setDefaultModule

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn