2012-12-29 38 views
1

我有,我想實現搜索引擎友好的改寫與.htaccess文件的.htaccess URL重寫友好的問題:有錯誤時,文件和文件夾名稱相同

我的網站有以下文件夾結構的網站:

- root/ 
    - corporativo/ 
     - [more stuff...] 
    - social/ 
     - [more stuff...] 
    - index.php 
    - corporativo.php 
    - social.php 

index.php處理我所有的網站功能和路由。我正在使用GET變量'cuerpo'來確定部分,即例如我使用index.php?cuerpo = social的社交部分。

我發現的一個問題是,具有社交目錄和社交.php與名稱和重寫條件衝突。

請建議正確的方法來處理這種情況。

非常感謝! 最好的問候!

+0

你能解釋一下你所看到的衝突嗎?這可能是你在'index.php'中的路由問題,並不一定與你的'.htaccess'規則相關... – Lix

+0

你是否從這個問題獲得任何信息(即錯誤信息),如果有的話請提供。 – 2012-12-29 18:34:22

回答

1

.htaccess文件,重寫規則纔可以使用這兩個條件 -

RewriteCond %{REQUEST_FILENAME} !-f # Not an actual file 
RewriteCond %{REQUEST_FILENAME} !-d # Not an actual directory 

它們規定只有當請求的文件名或文件夾不存在時,纔會應用以下規則。它被用來使瀏覽器仍然能夠訪問資源,而不必被路由。

我不是100%確定這是你的問題。在index.php中更可能是您的路由問題。

1

確保您使用的是正確的旗幟在您的.htaccess文件:

RewriteCond %{REQUEST_FILENAME} !-f [NC] #Not a file 
RewriteCond %{REQUEST_FILENAME} !-d [NC] #Not a dir 

編輯: LIX使得一個好點 - 如果你是在Unix,Linux等您不得要使用[NC],但是,如果你是在Windows,例如,您可能需要使用[NC]

+0

根據服務器的操作系統,如果這實際運行(我不知道它會如何),那麼它可能會導致問題。在unix系統上,**在文件名中區分大小寫,因爲在windows系統上,AFAIK沒有。 – Lix

相關問題