最近我一直在一個朋友的網站上工作,她可以上傳她的畫作。隨着這些圖像輸入一些像尺寸和技術的信息。這些圖像被添加到相冊中,然後顯示在相冊中。功能在那裏,現在我只想重寫網址,使它們看起來不像album.php?album_id=xx&name=xx
。我希望這些網址像album/id/name
。要做到這一點,我有以下重寫規則:URL重寫不做它應該做的事情,但代碼看起來很好
RewriteRule ^album/([0-9]+)/([0-9a-zA-Z_-]+) album.php?album_id=$1&naam=$2 [NC]
這意味着,如果我去album/1/test
,它應該得到的數據對於這張專輯並顯示它,但它不完全工作。它確實獲取了該專輯的數據,但圖像未加載(即使在檢查源代碼正確加載時),並且頁面上的任何位置都沒有任何樣式,即使樣式表加載正確。奇怪的是,如果我去album.php?album_id=1&naam=test
整個頁面的工作,所以我知道album.php頁面中的代碼工作。我還創建了一個test.php
文件用下面的代碼:
<?php
echo 'ID: ' . $_GET['album_id'] . '<br>';
echo 'Naam: ' . $_GET['naam'];
用下面的重寫規則:
RewriteRule ^test/([0-9]+)/([0-9a-zA-Z_-]+) test.php?album_id=$1&naam=$2 [NC]
如果我去test/1/test
,我得到了我想要的:
ID: 1
Naam: test
所以我知道改寫作品。
爲album.php的代碼可以發現here
任何想法是什麼原因造成的造型不加載,圖像無法正常加載?
謝謝,這確實是路徑問題。我已經有一個'$ root'變量用於菜單,所以我只是用它來指向圖像和CSS的正確路徑。問題解決了。 – Alex