2

我正在编写我的第一个 .htaccess 文件,虽然我已经学到了很多东西,但我有一件事正在努力解决。

我有一个 CMS,它根据一个名为“文件名”的变量生成页面,该变量通过我的 URL 传递,例如... index.php?filename=about.htm

所以我只有一个真实的文件... index.php

我希望“index.php?filename”不出现,因此所有 URL 看起来都像 www.example.com/about.htm 一样正常,即使“filename”查询字符串仍在传递。

我希望我有道理,这是可能的......谢谢大家!

4

2 回答 2

1

想改写/$var/index.php?filename=$var?尝试将其粘贴到.htaccess文件中:

Options +FollowSymlinks
RewriteEngine on

RewriteCond %{REQUEST_URI} ^/index\.php$
RewriteCond %{QUERY_STRING} filename=([a-z0-9-_])
RewriteRule ^(.*) /index.php?filename=%1
于 2013-04-03T09:49:27.293 回答
0
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?filename=$1 [L,QSA]
于 2013-04-03T09:39:33.223 回答