2012-12-04 95 views
0

我一直在關注一些YouTube視頻,試圖得到這個工作,但它似乎並不希望。這是我的.htaccess文件是如何尋找:清潔/短網址無法正常工作,因爲它應該

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 

RewriteRule RewriteRule ^(.*)$ index.php/$l 

我完全新爲.htaccess,我不能完全肯定它是如何工作的,但我的常識告訴我只需要創建一個文件,把它.htaccess並將其放在與我的index.php相同的文件夾中,對嗎?

所以,當我去,說的index.php /富/酒吧甚至只/富/酒吧/我得到一個404錯誤。

可能是什麼問題?這是安裝了PHP 5.3.10的Windows 2008 Server。

+0

的.htaccess通常會在網站的根。 –

+0

如果它不在根中,它會停止工作嗎? – George

+0

你最後一行的「RewriteRule」也增加了一倍。只需要一次。 –

回答

1

由於開始你的最後一行應該是

RewriteRule ^(.*)$ index.php/$l 

,它應該工作您預期的那樣......通過對現有的文件/文件夾的所有請求,但那些爲index.php

.htaccess可以在任何被請求URL命中的文件夾...唯一的區別是URL的基地,它與.htaccess所在的文件夾相關

例子:

/folder1 
.htaccess 
index.php 
/folder2 
.htaccess 
index.php 

如果訪問/test.php沒有,如果你的.htaccess文件將被處理(它沒有相關的要求URI

如果訪問/folder1/test.php相應.htaccessfolder1將被使用,在你的RewriteRule將顯示test.php$1,該/folder1/將從URI剝離。

如果訪問/folder1/folder2/test.php它類似於... Apache會使用.htaccessfolder2 ...從folder1的一個將被忽略(有點counderintuitive)

+0

它並沒有解決這個問題,但會造成另一個問題,這樣的感謝。 – George

+0

@ F4R-20是什麼問題...請更新您的問題,會盡力幫助 –

+0

我仍然得到一個404錯誤,但作爲一個技術人員自己,我知道,這可能是解決一個難題,由於諸多因素你看不到。我目前正在研究一個解決方案,我會讓你知道它是如何發展的。 – George