1
我开始在一个网站项目,我想用动态长度重写网址。例如,下面的网址可以在该网站存在:htaccess重写网址动态长度
http://www.url.com/signup/
或者
http://www.url.com/profile/mark/pm/compose/
现在我有一个剧本的.htaccess的工作,但我怀疑它的效率。下面的代码:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?page=$1
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?page=$1&subone=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?page=$1&subone=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php? page=$1&subone=$2&subtwo=$3
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?page=$1&subone=$2&subtwo=$3
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?page=$1&subone=$2&subtwo=$3&subthree=$4
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?page=$1&subone=$2&subtwo=$3&subthree=$4
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?arg[0]=$1&arg[1]=$2&arg[2]=$3&arg[3]=$4&arg[4]=$5
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?arg[0]=$1&arg[1]=$2&arg[2]=$3&arg[3]=$4&arg[4]=$5
其实我是想这样做,但我不知道我是怎么得到它的工作...
RewriteRule ^{[a-zA-Z0-9_-]+}/$ index.php?urlvar={$#}
所以URL
http://www.url.com/profile/mark/pm/compose/
会导致
http://www.url.com/index.php?urlvar[0]=profile&urlvar[1]=mark&urlvar[2]=pm&urlvar[3]=compose
任何人谁W知道如何解决这个问题?
日Thnx,但不幸的是这是行不通的.. 当我运行通过URL http: //www.url.com/profile/mark/pm/compose/ print_r($ _GET)导致Array([path] => index.php) –
您需要一个'RewriteCond%{REQUEST_URI}!index.php '在它之上或它循环。 –
编辑我的答案。我设法让我的系统工作(: –