【发布时间】:2010-05-04 15:49:30
【问题描述】:
我有一个网站,其中已经有许多子目录。 (所有存在于服务器的文件系统中) 我想用 htaccess 创建新的“虚拟”子目录,但 我只希望 htaccess 规则适用于在 DB 中列出的目录,而不是在文件系统中存在的目录。
即 文件系统有:/dir1/ & /dir2/
MySQL 数据库有 'dir3' & 'dir4' 的记录
我想要:
A:mysite.com/dir1/ 和 mysite.com/dir2/ 显示现有的旧内容
B:mysite.com/dir3/ 和 mysite.com/dir4/ 显示 PHP stippt 通过重定向提供的 MySQL 内容,例如: mysite.com/myscript.php?dir=dir3
C: mysite.com/dir5/ 显示 404 错误(Dir 在 DB 和 Database 中都不存在)
基本上我希望 .htaccess 像这样工作: IF DIR Exists in DB - 应用重写规则并显示来自 myscript.php?dir=DIR
的内容ELSE 不应用任何规则。
我可以创建一个单独的 php 脚本,当给定的目录名称是否存在于 DB 中时,它可以返回 0/1,但是如何让 mod_rewrite 从该脚本中获取数据?
htaccess/PHP 有可能吗?
【问题讨论】: