2011-10-06 26 views
0

我想用的.htaccess重寫http://localhost/css/file.csshttp://localhost/css/generateRewritting css文件到控制器的動作

是有可能做到的呢?

它似乎無法正常工作。我只有這個的.htaccess和Zend控制器CSS用行動產生

,如果我直接去到localhost/CSS /生成我有CSS的輸出,但是當我輸入localhost/CSS/file.css我得到未找到

這是我的.htaccess

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 

RewriteRule ^/css/file\.css$ /css/generate 

RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

回答

0

你的htaccess改成這樣:

RewriteEngine On 

RewriteRule ^/css/file\.css$ /css/generate [L] 

RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 

RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

的[L]表示 「最後」,這將停止運行它的任何後續規則,如果找到匹配。

+0

嗨,我有「消息:無效的控制器指定(CSS)」,所以它似乎它不是最後一個。 :( – debianek

+0

'http:// localhost/css/generate'仍然工作嗎? –

+0

是的,我使用這個作爲鏈接到我的css文件,而不是/css/file.css。 – debianek

0

是。將其放置在頂層.htaccesshttpd.conf並重新啓動Apache。

RewriteEngine On 

RewriteRule ^/css/file\.css$ /css/generate 
+0

@ user942701:呃......什麼? – alex

+0

它似乎無法正常工作。我只有這個.htaccess和Zend控制器** css **帶動作**生成** 如果我直接進入http:// localhost/css/generate我有css輸出,但是當我輸入http://本地主機/ CSS/file.css我得到**未找到** 這是我的.htaccess RewriteEngine敘述在 的RewriteCond%{} REQUEST_FILENAME -s [OR] 的RewriteCond%{} REQUEST_FILENAME -l [OR] 的RewriteCond%{REQUEST_FILENAME} -D- 重寫規則^/CSS /文件\的CSS $/CSS /生成 重寫規則^ * $ - [NC,L] 重寫規則^ * $的index.php [NC,L]。 – debianek

+0

@ user942701 :不要將你的'.htaccess'添加爲註釋。將其編輯爲您的原始問題。 – alex