脚本宝典收集整理的这篇文章主要介绍了zend-framework – 帮助将子域映射或路由到Zend Framework Controller(站点的移动版本),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
防爆. m.domain.COM/action将路由到“移动”控制器并指定任何操作.
我在这里和谷歌的其他地方发现了一些类似的问题,但我觉得我错过了一些明显的东西,因为无论我设置什么路线,它都被忽略了.我怀疑它与htaccess有关但在那里可能有问题.
这是我目前在我的bootstrap文件中的路径(但我在这里尝试了许多不同的模式).现在我只是想让它显示简单的普通索引:
$hostRoute = new Zend_Controller_Router_Route_Hostname(':subdomain.domain.com',array( 'controller' => 'index','action' => 'index' ) ); $plainPathroute = new Zend_Controller_Router_Route(':controller/:action/*',array('controller' => 'index','action' => 'index')); $controller->getRouter()->addRoute('mobile',$hostRoute->chain($plainPathRoute));
我的htaccess有:
RewrITeEngine on RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d rewriterule ^.*$- [NC,L] RewriteRule ^.*$index.PHP [NC,L]
>在我的主机帐户中创建子域“m”
>我的网站托管帐户中不存在子域“app”
对于方法1,它只是转到domain.com/m/中的通用index.htML文件.方法2告诉我页面不存在.
我真的希望这里有一些我不知道的东西.就像我上面提到的那样,只要我有一个子域指向特定的控制器,我就不会挑剔它是如何执行的.这将是一个非常简化的网站版本,所以我真的不需要做任何复杂的事情.
谢谢你的帮助.
<VirtualHost *:80> ServerName example.com ServerAlias www.example.com ServerAlias m.example.com ServerAlias www.m.example.com ...
您也可以通过主机面板选项添加指向您的站点根目录的新子域来执行此操作.
然后,您可以创建一个路由链,如您的示例所示,或者自己处理交换机,例如在控制器插件中:
$host = strtolower($request->getServer('HTTP_HOST')); if ('m.' === substr($host,2) || 'www.m.' === substr($host,6)) { $themes->setTheme('m'); $userSession->theme = 'm'; ...
以上是脚本宝典为你收集整理的zend-framework – 帮助将子域映射或路由到Zend Framework Controller(站点的移动版本)全部内容,希望文章能够帮你解决zend-framework – 帮助将子域映射或路由到Zend Framework Controller(站点的移动版本)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。