2015-04-01 64 views
0

我使用RewriteRule將醜陋的URL更改爲seo友好的URL。但是現在這兩個URL都在同時工作。你如何禁用醜陋的URL?醜陋的URL和seo友好的URL都可以使用。如何禁用醜陋的URL?

+0

有太多不同的方法可以做到這一點。 canonical,301重定向,...告訴我們您的設置/配置以及您嘗試的內容。 – DanFromGermany 2015-04-01 07:54:56

+0

我不確定你的設置/配置是什麼意思,但這是我的重寫規則RewriteRule^test?action = viewArticle&articleId = 23 [NC,L] – zaha 2015-04-01 07:57:13

回答

1

處理這種事情的最好方法是在PHP本身內處理路由。有很多路由器庫,它將URL映射到函數/類/控制器,反之亦然,這是處理URL最真實的方法。在這種情況下,你只需要一個通用的RewriteRule其重寫所有網址變成一個規範的處理程序:

RewriteRule^index.php 

index.php然後處理所有路由,並且因爲它只會處理「漂亮網址」的醜陋的贏得不符合其任何路線。根據這條規則,Apache不會直接將任何「醜陋URL」與文件進行匹配。

例如,請參閱http://symfony.com/doc/current/components/routing/introduction.html