php url重写和htaccess

时间:2012-02-22 09:32:56

标签: php .htaccess url-rewriting

我想知道你是否可以帮助我解决我遇到的问题,并就最佳实践提出一些建议。

我有一个mysql表如下

小组

列:id,名称,描述 数据:1,阿斯顿维拉,文字在这里

我需要进行动态重写以从表中提取数据。我能想到的唯一方法是使用_GET作为变量并查找名称,并将大小写更改为小写并交换空格 - 。我知道这样做有一些安全问题,但它看起来很漂亮www.mydomain.com/clubs/aston-villa

我一直在寻找一些像yii这样的框架,他们似乎是在htaccess文件中以php的身份进行操作。

有没有人能给我一些关于实现这一目标的最佳方法的指示,我还没有在网上找到关于实现这一目标的最佳方法的任何体面信息。

提前致谢

理查德

2 个答案:

答案 0 :(得分:0)

我使用的是带有mod_rewrite规则的.htaccess文件,它将所有404错误重定向到特定脚本。从那以后,由于您可以访问原始URL(刚刚触发404的美妙URL),您可以解析它并找出目标。

答案 1 :(得分:0)

最佳解决方案是将所有请求重定向到单个文件(这称为bootstrapping)。重定向在.htaccess中完成,如此

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    # Rewrite all other URLs to index.php/URL
    RewriteRule ^(.*)$ index.php/$1 [PT,L]

</IfModule>

然后,在index.php中解析请求网址,例如,通过$_SERVER值。

更好的是,只需google PHP bootstrap并获得一个非常简单的功能样本/演示