我有一个网站,我正在尝试使用.htaccess文件实现SEO友好重写
我的网站具有以下文件夹结构:
- root/
- corporativo/
- [more stuff...]
- social/
- [more stuff...]
- index.php
- corporativo.php
- social.php
index.php处理我的所有网站功能和路由。我正在使用GET变量'cuerpo'来确定该部分,例如我正在使用index.php?cuerpo = social的社交部分。
我发现的一个问题是社交目录和social.php与名称和重写条件冲突。
请建议处理这种情况的正确方法。
非常感谢! 最诚挚的问候!
答案 0 :(得分:1)
确保在.htaccess文件中使用正确的标记:
RewriteCond %{REQUEST_FILENAME} !-f [NC] #Not a file
RewriteCond %{REQUEST_FILENAME} !-d [NC] #Not a dir
编辑: Lix提出了一个很好的观点 - 如果您使用的是Unix,Linux等,您可能不想使用[NC],但是,如果您使用的是Windows,例如,您可能希望使用[NC]
答案 1 :(得分:1)
在.htaccess
文件中,在重写规则之前,可以使用这两个条件 -
RewriteCond %{REQUEST_FILENAME} !-f # Not an actual file
RewriteCond %{REQUEST_FILENAME} !-d # Not an actual directory
他们规定只有在请求的文件名或文件夹不存在时才会应用以下规则。它被用于使浏览器仍然能够访问资源而无需路由它们。
我不是100%确定这是你的问题。更可能是index.php
中的路由问题。