我的网站有扩展名为.htm的网页和像about.htm这样的“真实”文件。 因此,页面的网址格式始终为http://www.whatever.com/about.htm。
这很有效,但搜索引擎优化的人希望能够聪明地制作格式为http://www.whatever.com/cool-website/awesome-content/about.htm的URLS。
我已经在PHP中找到了如何剪切URL,从而在数据库中找到正确的页面。
所以,我要做的是将所有请求重定向到ROOT / index.php,然后在那里“切断”URL以找到所需的.htm,从而提供正确的页面。
如果没有子文件夹,我可以使用它。 但是,只要URL包含'/ cool-website / awesome-content /'等子文件夹,我就会收到404错误。
我想我需要某种类型的HTACCESS条目,但是已经尝试了加载但没有快乐。
真的很感激一些建议。 感谢
答案 0 :(得分:1)
大多数PHP框架都告诉你如何做到这一点,它被称为前端控制器。
查看this Zend Framework doc的顶部;它解释了您需要放入项目根目录的.htaccess
文件夹中。
RewriteEngine on
RewriteRule !\.(js|ico|gif|jpg|png|css|html)$ index.php
OR(首选)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
从那里,您可以在index.php
中进行切片和切块。