2011-02-05 151 views
0


我正在一个网站上的所有页面实际上是index.php +'名称'参数分析 并加载适当的模板和内容。
主页网址是:
http://www.some_site.com/?page=homepageURL重写,以删除参数

有人问我 “变” 的主页网址:
HTTP: //www.some_site.com
我可以使用url rewite和htaccess吗?如果是的话,我应该写些什么?

我的本地机器上工作,我想这码(模式改写启用):

<IfModule mod_rewrite.c> 
Options +FollowSymLinks 
RewriteEngine On 
RewriteRule /index.php /index.php?page=homepage 
</IfModule> 

我仍然需要在“名称”参数可用于当然的PHP代码,这样我就可以加载 模板和css文件。

2.便对其他网页(未主页)从(例如)
http://www.some_site.com/?page=products
到转换很好:
http://www.some_site.com/product
这不太重要。

thanx提前,并有一个愉快的一天:-)

回答

3

你不需要重写规则可言。只需要改变你的index.php文件,在没有页面变量的时候显示主页。

if (!isset($_GET['page'])) { 
    $_GET['page'] = 'homepage'; 
} 

教育目的,重写规则:

RewriteRule /$ index.php?page=homepage [L] 

也就是说,URI匹配仅仅是斜杠(URI中的网址您的域名后开始)。 $表示斜线后面不应有字符。

至于产品和这样的,假设仅由字母的单个单词:

RewriteRule /([a-zA-Z]+)$ index.php?page=$1 [L] 
1

下应该是你在找什么(你的第二个,不太重要,问题)。把它放在你的.htaccess-文件:

RewriteEngine On 
RewriteRule ^/([a-zA-z0-9-_]+)/?$ index.php?page=$1