.htaccess 漂亮的网址,空格?
Posted
技术标签:
【中文标题】.htaccess 漂亮的网址,空格?【英文标题】:.htaccess pretty url, spaces? 【发布时间】:2012-06-08 00:43:38 【问题描述】:这是我的代码,可让我更改
mydomain.com/?name=something&action=something&other=something
到
mydomain.com/something/something/something
RewriteEngine On
RewriteCond %SCRIPT_FILENAME -d [OR]
RewriteCond %SCRIPT_FILENAME -f [OR]
RewriteRule .* - [L]
RewriteRule ^(\w+)/(\w+)/(\w+)/?$ /index?name=$1&action=$2&other=$3
RewriteRule ^(\w+)/(\w+)/?$ /index.php?name=$1&action=$2
RewriteRule ^(\w+)/?$ /index.php?name=$1
但有时第一个“东西”可能是带有空格的东西,我不太确定如何格式化它。例如“非常随机的东西”。我知道 url 用 %20
格式化它,但我怎么能用 .htaccess 做到这一点,所以 url 可以是
mydomain.com/something very random/somethng/something
第一个单词也会以-
和一个随机数作为结尾,例如-4738
例如mydomain.com/something very random-4738/something/something
我将如何使用我正在使用的 .htaccess 代码来获取它?
【问题讨论】:
【参考方案1】:用这个替换你的代码
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %SCRIPT_FILENAME -d [OR]
RewriteCond %SCRIPT_FILENAME -f [OR]
RewriteCond %SCRIPT_FILENAME -l
RewriteRule .* - [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ /index.php?name=$1&action=$2&other=$3 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/?$ /index.php?name=$1&action=$2 [L,QSA]
RewriteRule ^([^/]+)/?$ /index.php?name=$1 [L,QSA]
【讨论】:
以上是关于.htaccess 漂亮的网址,空格?的主要内容,如果未能解决你的问题,请参考以下文章