我正在創建分類廣告網站。爲分類廣告網站上的每個類別創建子文件夾
該網站提供有關按位置過濾的搜索功能。
此刻,我只是使用php GET函數通過url發送位置並在搜索數據庫之前檢索它。
我希望能夠將該位置作爲域的子文件夾出現。
這是可能的,沒有上傳一個物理子文件夾和index.php文件的每個位置?
請提供實現此目的的最佳選擇。
我正在創建分類廣告網站。爲分類廣告網站上的每個類別創建子文件夾
該網站提供有關按位置過濾的搜索功能。
此刻,我只是使用php GET函數通過url發送位置並在搜索數據庫之前檢索它。
我希望能夠將該位置作爲域的子文件夾出現。
這是可能的,沒有上傳一個物理子文件夾和index.php文件的每個位置?
請提供實現此目的的最佳選擇。
謝謝你的幫助Kovge。
在考慮您的答案並做了一些進一步的研究之後,我創建了一個完全符合我的要求的RewriteRule。
由於位置處於多層次結構(州,區域,城市,郊區等),我已經做到了這一點,因此URL的深度有多少個子文件夾無關緊要,只會返回成爲最終的子文件夾(沒有結尾的斜線)。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*/)?(.*[^/])/?$ /index.php?location=$2
是的,這是可能的。 嘗試了Apache的mod_rewrite:
http://httpd.apache.org/docs/current/mod/mod_rewrite.html
打開它,並在.htaccess文件(必須與你的index.php文件相同的文件夾):
RewriteEngine on
RewriteBase/# or the subfolder where your index.php is inside the domain
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?location=$1
而對於指數爲例.PHP:
<?php
print $_GET['location'];
?>
這可能幫助你。
查看關於路由的[This SO Q/A](http://stackoverflow.com/questions/115629/simplest-php-routing-framework)。 – 2013-03-04 09:26:45