2013-07-30 95 views
0

我要生成的搜索引擎友好的網址爲如: - 說我有以下類似我要生成的搜索引擎友好的網址

http://www.apexengineeringproject.com/display_project.php?id=AP112&title=ADVANCED%20OFFICE%20AUTOMATION%20SYSTEM%20USING%20GSM%20AND%20MICROCONTROLLER

我只想要一個鏈接它是

http://www.apexengineeringproject.com/display_project.php/AP112/ADVANCED%20OFFICE%20AUTOMATION%20SYSTEM%20USING%20GSM%20AND%20MICROCONTROLLER

我嘗試重寫.htaccess中,但沒有成功,即使我沒有得到如何獲取參數一旦鏈接轉換爲SEO友好。所以任何人請幫助我在這種情況下。

編輯:

Options +FollowSymLinks 
RewriteEngine On 
RewriteCond %{SCRIPT_FILENAME} \/index\.php [NC] 
RewriteRule (.*) apexengineeringproject.com [R=301,L] 
RewriteRule ^display_project.php/([^/]+)/([^/]+) /display_project.php?id=$1&title=$2 [NC] 

這是我的.htaccess文件的內容,但問題是網頁被加載但不是風格和JavaScript的。

+0

你試過了什麼?什麼沒有用? –

+0

選項+了FollowSymLinks RewriteEngine敘述在 的RewriteCond%{SCRIPT_FILENAME} \ /索引\ .PHP [NC] 重寫規則(。*)http://www.apexengineeringproject.com [R = 301,L] 重寫規則^ display_project .php /([^ /] +)/([^ /] +)/display_project.php?id=$1&title=$2 [NC]這是我的.htaccess文件的內容,但問題是頁面被加載,但不是樣式和javascripts – Yogi

+0

樣式/腳本位於何處? –

回答

0

很可能,您使用相對文件名引用腳本/樣式文件。瀏覽器將使用整個目錄路徑,直到查詢字符串之前的最後一個斜槓用於獲取相對路徑。

例如,在重寫之前使用頁面時;

http://www.apexengineeringproject.com/display_project.php 

...它在scripts/test.js尋找一個腳本,瀏覽器將獲取它;

http://www.apexengineeringproject.com/scripts/test.js 

重寫後使用頁面時;

http://www.apexengineeringproject.com/display_project.php/AP112/ADVANCED%20OFFICE%20AUTOMATION%20SYSTEM%20USING%20GSM%20AND%20MICROCONTROLLER 

...獲取相對路徑scripts/test.js將獲取該文件;

http://www.apexengineeringproject.com/display_project.php/AP112/scripts/test.js 

......這大概不存在。

要解決該問題,只需使腳本路徑和css路徑相對於服務器根目錄,即不要使用scripts/test.js,而要使用/scripts/test.js

編輯:雖然我會認爲它有點哈克,你可以重寫一些文件回到根。不能測試這個,但它應該接近你想要的;

RewriteCond %{REQUEST_URI} \.(jpg|css|png|js)$ [NC] 
RewriteRule display_project.php/[^/]*(.*) $1 [NC] 
+0

yes上述解決方案正在運行...... 。但是有沒有其他解決方案,如將所有請求重定向到主域鏈接,然後重寫URL – Yogi

+0

@ user2028204添加了可能的重寫以將文件重寫回根目錄。 –