<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Zend Framework: Router for subdirectory-based site</title>
	<atom:link href="http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/feed/" rel="self" type="application/rss+xml" />
	<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/</link>
	<description>In my blog I'll try to describe about interesting technologies, my discovery in IT and some useful things about programming.</description>
	<pubDate>Sun, 06 Jul 2008 23:28:31 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: &#187; Zend Web Design Framework SharpProgrammer.Com</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-108200</link>
		<dc:creator>&#187; Zend Web Design Framework SharpProgrammer.Com</dc:creator>
		<pubDate>Thu, 30 Nov 2006 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-108200</guid>
		<description>[...] Zend Framework: Router for subdirectory-based site &#124;&#124; Dmytro Shteflyuk’s Home - I&#8217;ve had problems with Zend Framework: Router for subdirectory-based site &#124;&#124; Dmytro Shteflyuk’s Home [...]</description>
		<content:encoded><![CDATA[<p>[...] Zend Framework: Router for subdirectory-based site || Dmytro Shteflyuk’s Home - I&#8217;ve had problems with Zend Framework: Router for subdirectory-based site || Dmytro Shteflyuk’s Home [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Campion</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-130</link>
		<dc:creator>Kevin Campion</dc:creator>
		<pubDate>Thu, 30 Nov 2000 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-130</guid>
		<description>I have just tested the Zend Framework, and I was confronted with the same problem (subdomain). 
I found your explanation after some research. But with version 0.1.2 of Zend Framework, it doesn't work.

There are the changes which I carried out for work :  

At the beginning I used this tutorial to have a little application for testing :  http://phparch.com/zftut/index.php?p=0 


My structure look like this: 

[cc lang="text"]
DOCUMENT ROOT &gt; 		/www
My First Application &gt; 		/www/project1
Zend Framework Library &gt; 	/www/zend/ZendFramework-0.1.2/library
(php.ini contains include_path = ".:/www/zend/ZendFramework-0.1.2/library")
[/cc]

I wished to check my application by http://example.org/project1/

[cc lang="text"]
/www/project1/.htaccess :
	RewriteEngine on
	RewriteRule !\.(js&#124;ico&#124;gif&#124;jpg&#124;png&#124;css)$ index.php

/www/project1/app/controllers/IndexController.php

/www/project1/app/views/index.php
[/cc]

/www/project1/index.php :
[cc lang="php"]
setScriptPath('./app/views');
Zend::register('view', $view);

$controller = Zend_Controller_Front::getInstance();
$controller-&gt;setControllerDirectory('./app/controllers');
 
$router = new SubDirectoryRouter();
$controller-&gt;setRouter($router);
 
$controller-&gt;dispatch();
[/cc]

When i check "http://localhost/project1/" I've got this error :
[cc lang="text"]
Fatal error: Class 'Zend_Controller_Dispatcher_Action' not found in  /www/zend/ZendFramework-0.1.2/library/SubDirectoryRouter.php on line 73
[/cc]

It is cause of: &lt;tt&gt;$actionObj = new Zend_Controller_Dispatcher_Action($controller, $action, $params);&lt;/tt&gt;
Replace it by &lt;tt&gt;$actionObj = new Zend_Controller_Dispatcher_Token($controller, $action, $params);&lt;/tt&gt;
and in top of the file SubDirectoryRouter.php move &lt;tt&gt;require_once 'Zend/Controller/Dispatcher/Interface.php';&lt;/tt&gt;
to &lt;tt&gt;require_once 'Zend/Controller/Dispatcher/Token.php';&lt;/tt&gt;

In Zend Framework 0.1.2 it's the right way (cf /www/zend/ZendFramework-0.1.2/library/Zend/Controller/Router.php)

When i recheck "http://localhost/project1/" it work.

D'ont forget to change in all views :
 by 
or
&lt;a&gt;escape($entry['id']); ?&#62;"&#62; by &lt;a&gt;escape($entry['id']); ?&#62;"&#62;
</description>
		<content:encoded><![CDATA[<p>I have just tested the Zend Framework, and I was confronted with the same problem (subdomain).<br />
I found your explanation after some research. But with version 0.1.2 of Zend Framework, it doesn&#8217;t work.</p>
<p>There are the changes which I carried out for work :  </p>
<p>At the beginning I used this tutorial to have a little application for testing :  <a href="http://phparch.com/zftut/index.php?p=0" rel="nofollow">http://phparch.com/zftut/index.php?p=0</a> </p>
<p>My structure look like this:</p>
<div class="codecolorer-container text">DOCUMENT ROOT > 		/www
My First Application > 		/www/project1
Zend Framework Library > 	/www/zend/ZendFramework-0.1.2/library
(php.ini contains include_path = ".:/www/zend/ZendFramework-0.1.2/library")</div>
<p>I wished to check my application by <a href="http://example.org/project1/" rel="nofollow">http://example.org/project1/</a></p>
<div class="codecolorer-container text">/www/project1/.htaccess :
	RewriteEngine on
	RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php

/www/project1/app/controllers/IndexController.php

/www/project1/app/views/index.php</div>
<p>/www/project1/index.php :</p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;">setScriptPath<span class="br0">&#40;</span><span class="st0">'./app/views'</span><span class="br0">&#41;</span>;<br />
Zend::<span class="me2">register</span><span class="br0">&#40;</span><span class="st0">'view'</span>, <span class="re0">$view</span><span class="br0">&#41;</span>;<br />
<br />
<span class="re0">$controller</span> = Zend_Controller_Front::<span class="me2">getInstance</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
<span class="re0">$controller</span>-&gt;<span class="me1">setControllerDirectory</span><span class="br0">&#40;</span><span class="st0">'./app/controllers'</span><span class="br0">&#41;</span>;<br />
&nbsp;<br />
<span class="re0">$router</span> = <span class="kw2">new</span> SubDirectoryRouter<span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
<span class="re0">$controller</span>-&gt;<span class="me1">setRouter</span><span class="br0">&#40;</span><span class="re0">$router</span><span class="br0">&#41;</span>;<br />
&nbsp;<br />
<span class="re0">$controller</span>-&gt;<span class="me1">dispatch</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></div>
<p>When i check &#8220;http://localhost/project1/&#8221; I&#8217;ve got this error :</p>
<div class="codecolorer-container text" style="height:35px;">Fatal error: Class 'Zend_Controller_Dispatcher_Action' not found in  /www/zend/ZendFramework-0.1.2/library/SubDirectoryRouter.php on line 73</div>
<p>It is cause of: <tt>$actionObj = new Zend_Controller_Dispatcher_Action($controller, $action, $params);</tt><br />
Replace it by <tt>$actionObj = new Zend_Controller_Dispatcher_Token($controller, $action, $params);</tt><br />
and in top of the file SubDirectoryRouter.php move <tt>require_once &#8216;Zend/Controller/Dispatcher/Interface.php&#8217;;</tt><br />
to <tt>require_once &#8216;Zend/Controller/Dispatcher/Token.php&#8217;;</tt></p>
<p>In Zend Framework 0.1.2 it&#8217;s the right way (cf /www/zend/ZendFramework-0.1.2/library/Zend/Controller/Router.php)</p>
<p>When i recheck &#8220;http://localhost/project1/&#8221; it work.</p>
<p>D&#8217;ont forget to change in all views :<br />
 by<br />
or<br />
<a>escape($entry['id']); ?&gt;&#8221;&gt; by </a><a>escape($entry['id']); ?&gt;&#8221;&gt;</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Древлянин</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-89</link>
		<dc:creator>Древлянин</dc:creator>
		<pubDate>Tue, 30 Nov 2010 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-89</guid>
		<description>Приглашаю к русскоязычному обсуждению Zend Framework в этой конференции: http://groups.google.ru/group/ru-zend-framework</description>
		<content:encoded><![CDATA[<p>Приглашаю к русскоязычному обсуждению Zend Framework в этой конференции: <a href="http://groups.google.ru/group/ru-zend-framework" rel="nofollow">http://groups.google.ru/group/ru-zend-framework</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kpumuk</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-66</link>
		<dc:creator>Kpumuk</dc:creator>
		<pubDate>Sun, 30 Nov 2003 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-66</guid>
		<description>К сожалению, никаких средств ORM в ZF не будет (по заявлениям разработчиков). Фреймворк преследует несколько целей, включая отсутствие необходимости в файлах конфигурации (configuration-less), простота, эффективность. Propel же не только требует настроить, что весьма и весьма нетривиально, но и вводит еще один этап - генерацию классов (хотя, надо признать, довольно удобно получается :-) ). В общем именно такая тема поднималась в списках рассылки, и разработчики сказали свое веское "нет". Посмотрим, если будет желание, попробую их как-нибудь красивенько увязать :-) (но обещать ничего не буду за неимением достаточного количества свободного времени).</description>
		<content:encoded><![CDATA[<p>К сожалению, никаких средств ORM в ZF не будет (по заявлениям разработчиков). Фреймворк преследует несколько целей, включая отсутствие необходимости в файлах конфигурации (configuration-less), простота, эффективность. Propel же не только требует настроить, что весьма и весьма нетривиально, но и вводит еще один этап - генерацию классов (хотя, надо признать, довольно удобно получается <img src='http://kpumuk.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ). В общем именно такая тема поднималась в списках рассылки, и разработчики сказали свое веское &#8220;нет&#8221;. Посмотрим, если будет желание, попробую их как-нибудь красивенько увязать <img src='http://kpumuk.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> (но обещать ничего не буду за неимением достаточного количества свободного времени).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Михаил</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-65</link>
		<dc:creator>Михаил</dc:creator>
		<pubDate>Sun, 30 Nov 2003 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-65</guid>
		<description>Спасибо, Дмитро!
Я просто сам только "въезжаю" во фремворки.. Пытался осилить Symfony -- не получилось, CakePHP -- попроще, тем не менее, все говорят, что время на их изучение для создания рабочего приложения (а не просто blabla.php) нужно отсчитывать в месяцах. Почитал обзор ZF и заинтересовался очень, поскольку спустя 2 часа могу что-то изобразить тогда как с Ruby-oriented type of frameworks приходится делать слишком много операций, что только осложняет работу. Хотя скорее всего все от того, что у меня просто нет много времени для их изучения. Порой даже кажется, что надо сперва изучить структуру ROR, чтоб потом что-то написать с помощью Symfony/Cake :))))) 
Чего вот очень хотелось бы, тем не менее, в ZF, так это поддержку ORM, т.е. чего-то вроде Propel, но желательно еще проще. :))

Случайно совсем наткнулся на ваш сайт, так что теперича буду следить.. ;)

С уважением, 
Михаил</description>
		<content:encoded><![CDATA[<p>Спасибо, Дмитро!<br />
Я просто сам только &#8220;въезжаю&#8221; во фремворки.. Пытался осилить Symfony &#8212; не получилось, CakePHP &#8212; попроще, тем не менее, все говорят, что время на их изучение для создания рабочего приложения (а не просто blabla.php) нужно отсчитывать в месяцах. Почитал обзор ZF и заинтересовался очень, поскольку спустя 2 часа могу что-то изобразить тогда как с Ruby-oriented type of frameworks приходится делать слишком много операций, что только осложняет работу. Хотя скорее всего все от того, что у меня просто нет много времени для их изучения. Порой даже кажется, что надо сперва изучить структуру ROR, чтоб потом что-то написать с помощью Symfony/Cake :)))))<br />
Чего вот очень хотелось бы, тем не менее, в ZF, так это поддержку ORM, т.е. чего-то вроде Propel, но желательно еще проще. :))</p>
<p>Случайно совсем наткнулся на ваш сайт, так что теперича буду следить.. <img src='http://kpumuk.info/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>С уважением,<br />
Михаил</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kpumuk</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-63</link>
		<dc:creator>Kpumuk</dc:creator>
		<pubDate>Sat, 30 Nov 2002 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-63</guid>
		<description>Здравствуйте, Михаил

Во-первых, Вам нужно создать собственный роутер, поскольку стандартный предназначен для передачи параметров в виде:
http://host/controller/action/param1/value1/param2/value2/

Вы можете скопировать код стандартного роутера, и на его основе создать свой, изменив следующие строки:

&lt;strong&gt;Обработка запроса:&lt;/strong&gt;
[cc lang="php"]
//...
    $controller = $path[0];
    $action     = isset($path[1]) ? $path[1] : null;
 
    if (!strlen($controller)) {
      $controller = 'index';
      $action = 'index';
    }
//...
[/cc]

на

[cc lang="php"]
//...
    $controller = $path[0];
    $action = 'index';
//...
[/cc]

&lt;strong&gt;Обработка параметров:&lt;/strong&gt;
[cc lang="php"]
//...
    $params = array();
    for ($i=2; $i&lt;sizeof($path); $i=$i+2) {
      $params[$path[$i]] = isset($path[$i+1]) ? $path[$i+1] : null;
    }
//...
[/cc]

на что-то вроде

[cc lang="php"]
//...
    $params = array();
    for ($i=1; $i&lt;sizeof($path); $i++) {
      $params[] = $path[$i];
    }
//...
[/cc]

Теперь осталось просто определить &lt;tt&gt;NewsController&lt;/tt&gt; с методом &lt;tt&gt;index()&lt;/tt&gt;.

На следующей неделе я собираюсь написать пример использования Zend Framework, где будет использоваться подобная техника.</description>
		<content:encoded><![CDATA[<p>Здравствуйте, Михаил</p>
<p>Во-первых, Вам нужно создать собственный роутер, поскольку стандартный предназначен для передачи параметров в виде:<br />
<a href="http://host/controller/action/param1/value1/param2/value2/" rel="nofollow">http://host/controller/action/param1/value1/param2/value2/</a></p>
<p>Вы можете скопировать код стандартного роутера, и на его основе создать свой, изменив следующие строки:</p>
<p><strong>Обработка запроса:</strong></p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;"><span class="co1">//...</span><br />
&nbsp; &nbsp; <span class="re0">$controller</span> = <span class="re0">$path</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; <span class="re0">$action</span>&nbsp; &nbsp; &nbsp;= <span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$path</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span> ? <span class="re0">$path</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> : <span class="kw2">null</span>;<br />
&nbsp;<br />
&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>!<span class="kw3">strlen</span><span class="br0">&#40;</span><span class="re0">$controller</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span class="re0">$controller</span> = <span class="st0">'index'</span>;<br />
&nbsp; &nbsp; &nbsp; <span class="re0">$action</span> = <span class="st0">'index'</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="co1">//...</span></div></div>
<p>на</p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;"><span class="co1">//...</span><br />
&nbsp; &nbsp; <span class="re0">$controller</span> = <span class="re0">$path</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; <span class="re0">$action</span> = <span class="st0">'index'</span>;<br />
<span class="co1">//...</span></div></div>
<p><strong>Обработка параметров:</strong></p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;"><span class="co1">//...</span><br />
&nbsp; &nbsp; <span class="re0">$params</span> = <span class="kw3">array</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">2</span>; <span class="re0">$i</span>&lt;sizeof<span class="br0">&#40;</span><span class="re0">$path</span><span class="br0">&#41;</span>; <span class="re0">$i</span>=<span class="re0">$i</span><span class="nu0">+2</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span class="re0">$params</span><span class="br0">&#91;</span><span class="re0">$path</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#93;</span> = <span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$path</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="nu0">+1</span><span class="br0">&#93;</span><span class="br0">&#41;</span> ? <span class="re0">$path</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="nu0">+1</span><span class="br0">&#93;</span> : <span class="kw2">null</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="co1">//...</span></div></div>
<p>на что-то вроде</p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;"><span class="co1">//...</span><br />
&nbsp; &nbsp; <span class="re0">$params</span> = <span class="kw3">array</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">1</span>; <span class="re0">$i</span>&lt;sizeof<span class="br0">&#40;</span><span class="re0">$path</span><span class="br0">&#41;</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span> <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span class="re0">$params</span><span class="br0">&#91;</span><span class="br0">&#93;</span> = <span class="re0">$path</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="co1">//...</span></div></div>
<p>Теперь осталось просто определить <tt>NewsController</tt> с методом <tt>index()</tt>.</p>
<p>На следующей неделе я собираюсь написать пример использования Zend Framework, где будет использоваться подобная техника.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Михаил</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-62</link>
		<dc:creator>Михаил</dc:creator>
		<pubDate>Thu, 30 Nov 2000 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-62</guid>
		<description>Приветствую, Дмитро!

Спасибо за весьма интересные исследования!
Меня, вот, интересует, как в ZF реализовать ЧПУ вроде: http://host/news/2006/01/01/this-is-a-cool-article-title/ ?

Заранее спасибо!
С уважением,
Михаил</description>
		<content:encoded><![CDATA[<p>Приветствую, Дмитро!</p>
<p>Спасибо за весьма интересные исследования!<br />
Меня, вот, интересует, как в ZF реализовать ЧПУ вроде: <a href="http://host/news/2006/01/01/this-is-a-cool-article-title/" rel="nofollow">http://host/news/2006/01/01/this-is-a-cool-article-title/</a> ?</p>
<p>Заранее спасибо!<br />
С уважением,<br />
Михаил</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 番茄鸡蛋炒米 &#187; Zend Framework体验 初识</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-61</link>
		<dc:creator>番茄鸡蛋炒米 &#187; Zend Framework体验 初识</dc:creator>
		<pubDate>Fri, 30 Nov 2007 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-61</guid>
		<description>[...] http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/ [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/" rel="nofollow">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kpumuk</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-32</link>
		<dc:creator>Kpumuk</dc:creator>
		<pubDate>Tue, 30 Nov 2004 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-32</guid>
		<description>&lt;p&gt;As I understood from mailing list, default router allready patched and will be available in next release (0.1.3).&lt;/p&gt;

&lt;p&gt;Dinh:&lt;/p&gt;
&lt;blockquote&gt;&lt;div&gt;
I patched Router.php in ZF with your code:

[cc lang="php"]
/**
 * @todo Replace with Zend_Request object
 */
//$path = $_SERVER['REQUEST_URI'];

// add

// what's the path to where we are?
$appRoutePath = dirname($_SERVER['SCRIPT_NAME']);        
$path = str_replace($appRoutePath, '', $_SERVER['REQUEST_URI']);
[/cc]

It works like a charm.
&lt;/div&gt;&lt;/blockquote&gt;

</description>
		<content:encoded><![CDATA[<p>As I understood from mailing list, default router allready patched and will be available in next release (0.1.3).</p>
<p>Dinh:</p>
<blockquote><div>
I patched Router.php in ZF with your code:</p>
<div class="codecolorer-container php"><div class="codecolorer" style="font-family: monospace;"><span class="coMULTI">/**<br />
&nbsp;* @todo Replace with Zend_Request object<br />
&nbsp;*/</span><br />
<span class="co1">//$path = $_SERVER['REQUEST_URI'];</span><br />
<br />
<span class="co1">// add</span><br />
<br />
<span class="co1">// what's the path to where we are?</span><br />
<span class="re0">$appRoutePath</span> = <span class="kw3">dirname</span><span class="br0">&#40;</span><span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="st0">'SCRIPT_NAME'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;&nbsp; &nbsp; &nbsp; &nbsp; <br />
<span class="re0">$path</span> = <span class="kw3">str_replace</span><span class="br0">&#40;</span><span class="re0">$appRoutePath</span>, <span class="st0">''</span>, <span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="st0">'REQUEST_URI'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></div>
<p>It works like a charm.
</p></div>
</blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kpumuk</title>
		<link>http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-31</link>
		<dc:creator>Kpumuk</dc:creator>
		<pubDate>Mon, 30 Nov 2009 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://kpumuk.info/php/zend-framework-router-for-subdirectory-based-site/#comment-31</guid>
		<description>Thanks, Mike. I will look at new version. I think it's too early to use it in real projects, but idea is great. This framework can become one of the most popular thing in PHP world.

Rob, no comments :-) My code looks too similar with your one. Maybe it's really great problem for people who started working with this framework.</description>
		<content:encoded><![CDATA[<p>Thanks, Mike. I will look at new version. I think it&#8217;s too early to use it in real projects, but idea is great. This framework can become one of the most popular thing in PHP world.</p>
<p>Rob, no comments <img src='http://kpumuk.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> My code looks too similar with your one. Maybe it&#8217;s really great problem for people who started working with this framework.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
