我正在为客户构建内部CMS.而不是为每个页面创建一个新的PHP文件,我想知道是否有一种方法来加载基于URL的页面而不是该位置的物理PHP文件.
所以,如果我访问www.mysite.com/new-page,我希望这只是对我的模板,内容等的引用,而不是实际的.PHP文件.
对不起,如果我没有正确解释,但我很难解释它.
谢谢.
解决方法:
听起来你需要Front Controller pattern.
基本上每个URL都会被重定向到一个PHP页面,该页面决定了如何处理它.你可以用这个.htaccess来使用Apache mod_rewrite:
RewriteEngine on
RewriteBase /
RewriteRule !\.(js|ico|txt|gif|jpg|png|css)$index.PHP
这会将除静态内容文件之外的所有内容重定向到index.PHP.根据需要调整.
RewriteEngine on
RewriteBase /
RewriteRule ^new-page/ myhandler.PHP
任何以“new-page”开头的网址都会发送到myhandler.PHP.