2012-04-05 99 views
0

在我的.htaccess文件我有以下重新寫入規則現代重寫規則重寫錯誤

RewriteRule ^([a-z]*)$ work.php?album=$1 [L] 

我讀的所有目錄根directoy和PHP

創造一個像

代碼鏈接

$dir=glob('images/works/*'); 
$dir_listing=array(); 
foreach($dir as $list) 
{ 
if(is_dir($list)) 
$dir_listing[]= (basename($list)); 
} 
foreach($dir_listing as $folders) 
echo"<a href='$folders' ><img src='Default-thumbnail-folder.jpg' /> </a>"; 

問題是,我有三個文件夾的作品目錄下{ALB,禁令,BAS}

第一個和最後一個{白蛋白和淺}正常工作對我的重定向規則URL {SITENAME /工程/ BAS}

但第二{禁令}創建像{SITENAME /作品URL /禁令/}注意額外的「/」創造的問題,似乎因爲它是建立在問題的一些文件夾的名稱,所以請幫我在創造一個適當的重定向規則

我要像

鏈接
<a href="alb" >About</a> // to redirect to work.php?content=about 

我也注意到,如果URL在瀏覽器就像是工作/ ALB/CSS不適用 我試圖

<link href="sample.css" rel="stylesheet" type="text/css" /> 

<link href="css/sample.css" rel="stylesheet" type="text/css" /> 

它不會爲URL的工作就像{作品/約/}它適用於{works/about}

+1

你問到的問題(同時存在多個問題 - 但相關)早就被問到了。你可能不知道要搜索什麼。對於CSS問題,我記得這個問題:[.htaccess中的基本URL](http://stackoverflow.com/q/6848428/367456)(我確信還有其他相關的問題,這只是一個)。 – hakre 2012-04-05 07:39:48

+1

'RewriteRule ^([a-z \ /] *)$ work.php?album = $ 1 [L]'this should work – safarov 2012-04-05 07:42:00

回答

1

簡單!

嘗試將重寫規則更改爲:

RewriteRule ^([a-z]*)/?$ work.php?album=$1 [L] 

使「/」末可能會或可能不存在,在這兩種情況下,它的確定。

1

,以避免重寫CSS URI的使用這些規則

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

至於你的其他問題,您可以使用結果URL的微調,以確保你永遠不會有一個「/」結尾 trim($url,'/');