2011-03-19 124 views
0

我目前的網址是一樣的東西:htaccess的URL重寫,去掉查詢字符串和文件擴展名

http://something.somedomain.com/about_us/profile.php?tab1=about_us

更復雜的是: http://something.somedomain.com/exchange_hosting/feature/outlook_web_access.php?tab1=exchange_hosting&tab2=feature&tab3=outlook_web_access

我想讓他們短:

http://something.somedomain.com/about_us/profile http://something.somedomain.com/exchange_hosting/feature/outlook_web_access

我的.htaccess

################################# 
# Directory Indexes    # 
################################# 
DirectoryIndex index.php 

######################################### 
# REWRITE RULES       # 
######################################### 
RewriteEngine On 
RewriteBase/

Options +FollowSymlinks 
<IfModule mod_rewrite.c> 

#not a file 
RewriteCond %{REQUEST_FILENAME} !-f 

#not a dir 
RewriteCond %{REQUEST_FILENAME} !-d 

#this dosen't work 
#RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ /$1.php?tab1=$0&tab2=$1 

</IfModule> 

# END # 

回答

1

嘗試以下兩種尺寸。對於更長的網址,你必須編寫更多這樣的規則。

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ $1/$2.php?tab1=$1&tab2=$2 [L] 
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ $1/$2/$3.php?tab1=$1&tab2=$2&tab3=$3 [L]