我正在制作一个非常小的项目,而通常我会使用一个PHP框架为我处理这个问题,我不想要一个框架的不必要的混乱。我有这个结构:
-> assets
-> css/etc
-> pages
-> api.htm
-> scramble.htm
-> unscramble.htm
-> structure
-> header.htm
-> footer.htm
-> index.php
所有这些文件都在目录中,example.com/example/scrambling/
因此,要访问我的文件,通常我必须访问example.com/example/scrambing/pages/api.htm
例如 - 但我希望通过index.php处理所有页面加载。
我的目标是只需访问example.com/example/scrambling/api
我发现了一些关于如何用.htaccess实现这个问题的问题,但是没有一个问题适合我。它们总是导致无限循环,并被重定向到/example/scrambling/pages/index/pages/index/pages/index/pages/...
- 我不确定如何解决这个问题。
我当前的.htaccess文件是这样的:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?f=$1
我试图通过echo $_REQUEST['f'];
如何让.htaccess文件无法无限重定向?
答案 0 :(得分:1)
试试这个,这肯定会奏效。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [L]
RewriteRule ^([^/]+)$ index.php?f=$1 [L,QSA]