目前我工作在我的網站轉移到搜索引擎友好的URL(在本地主機)友好,PHP SEO用乾淨的URL
這裏的原始URL與查詢字符串:
http://{ip}/sitename/item.php?category=44
我想轉換爲:
http://{ip}/sitename/item/category/44
的.htaccess文件(與item.php相同的目錄):
DirectoryIndex index.php
Options -Indexes
<files page>
ForceType application/x-httpd-php
</files>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^.*$ item.php%{REQUEST_URI} [L]
RewriteRule ^/item/([0-9]+) /item.php?category=$1
</IfModule>
<Files *htaccess>
Deny from all
</Files>
在
item.php
,我用$_GET['category']
$category = preg_replace('/[^0-9]/', '', $mysqli->real_escape_string($_GET['category']));
$list = $listing->get_items($category, $mysqli);
if($list == 0){
echo '<p><h2>Page not found</h2></p>';
die();
}
問題1: 當我裝http://{ip}/sitename/item/category/44
,頁面無法得到變量傳遞到get_item()
,頁面顯示Page not found
? 44是假設返回一個值。
問題2: 我的頁面沒有加載的引用文件,所有*.css
*.js
等被忽略?
你的重寫基地定義在哪裏?我相信你錯過了正確的位置。 –