简单的mod_rewrite和网站目录结构

时间:2010-02-10 18:07:11

标签: .htaccess mod-rewrite directory-structure

我正在制作一个包含代理相册的网站。 每个代理都有自己的.css文件夹。 每个代理dir都有index.php和.css

的相册文件夹
/example.com/
    /agent001/
    agent001.css
        /000005/
        index.php
        main.css
        /photos/
            aaa.jpg
            bbb.jpg
        /000006/
        index.php
        ...
    /agent002/
    agent002.css
        /000009/
        ...

因此代理商000005专辑的路径为:/agent001/000005/index.php

我想要一个快捷方式:/000005/转发到/agent001/000005/some-title-here

我无法理解的另一件事是我的目标结构。 我真的需要代理和相册文件夹来组织我的东西。 但是index.php和main.css都是一样的,我应该把这些文件移到root吗?

任何帮助都非常感谢!

1 个答案:

答案 0 :(得分:0)

mod_rewrite无法做到这一点。如果有一个具有该名称的文件夹,您需要一些遍历代理目录的程序进行检查。

但除此之外,您的短网址将不再明显。因为像Max S. said in the comments一样,如果多个座席有一张专辑“000005”,应如何映射/000005/?或者这个值对所有代理商都是唯一的吗?

使用 index.php main.css 的集中实例是避免冗余和复杂性的最佳选择。在这种情况下,您可以使用mod_rewrite重写对中央文件的请求,如:

RewriteRule ^[^/]+/[^/]+/index\.php$ /index.php