首頁  >  文章  >  後端開發  >  如何实现此urlrewrite功能?

如何实现此urlrewrite功能?

WBOY
WBOY原創
2016-06-06 20:39:461052瀏覽

需求是这样
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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn