2

我怎样才能做到这一点?

主链接:

http://www.domain.com/?link=whatever/something/everythting

转换成:

http://www.domain.com/whatever/something/everythting

我试过这个:

RewriteEngine On
RewriteRule ^([^/]*)$ index.php?link=$1 [L]

但不工作。

4

3 回答 3

1

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
# If the request is not for a valid link
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ /?link=$1 [L,QSA]
于 2012-06-14T09:28:18.023 回答
1

这应该适合你:

RewriteEngine On
RewriteRule ^(.+)$ index.php?link=$1 [L]

编辑:

正如@anubhava 在他的答案中发布的那样,您应该检查请求的文件或目录是否存在于 RewriteCond 中。

于 2012-06-14T09:29:29.773 回答
0

这应该有效:

RewriteRule ^([^.]+)$ index.php?link=$1 [L]
于 2012-06-14T09:32:32.327 回答