2

简而言之:我正在一个网站上工作,消费者可以在该网站上比较多个分支机构的公司(服务提供商)。因此,我们使用最大的 SEO 友好 url。3 个“目录” mydomain.com/1/mydomain.com/1/2/mydomain.com/1/2/3。在这些 url 中是 1 用户可以搜索的分支机构,2 代表城市,3 定义公司名称。

我已经在我的 .htaccess 文件中使用以下代码完成了这项工作。

<IfModule mod_rewrite.c>
    Options +FollowSymlinks  
    RewriteEngine On 

    RewriteRule ^(style|media)(/.*)?$ - [L] 

    RewriteRule index\.* index.php [L,QSA]  
    RewriteRule ^([^/]*)/([^/]*)/$ branch.php?branch=$1&city=$2 [L,QSA]  
    RewriteRule ^([^/]*)/([^/]*)/([^/]*)/?$ company.php?branch=$1&city=$2&company=$3 [L,QSA]  
    RewriteRule ^([^/]*)/([^/]*)$ branch.php?branch=$1&city=$2 [L,QSA]  
    RewriteRule ^([^/][a-zA-Z0-9-]+)$ branch.php?branch=$1 [L,QSA]  
</IfModule>

我的样式表位于目录样式中,如果您访问网址 mydomain.com 或 mydomain.com/1,这可以正常工作。地址 mydomain.com/1/ 并进一步重定向到正确的文件名,但继续在mydomain.com/1/style/(或mydomain.com/1/2/style等等)中搜索 stylesheet.css。我知道这个网站上有很多这样的问题,我尝试了很多,但没有一个能真正做到我想要的。

我知道这种情况是否很艰难,所以我想我会让它变得更容易(但由于这个语言让我感到困惑,我现在真的不知道该怎么做哈哈)。所以这就是我需要的:

  • 每个请求都必须重定向到 index.php,并将给定的目录作为参数添加。(所以 domain.com/1/ 重写index.php?1=1和 domain.com/1/a/b 重写index.php?1=1&2=a&3=b, in index.php我将查找我必须包含的页面)。
  • 此规则不包括 Dirs样式媒体。
  • 并非必须排除每个现有的目录或文件,因为用户可能无法访问包含的目录(例如)

我希望你能帮助我,因为我把它弄得一团糟^^

谢谢!

4

0 回答 0