包含页面的最佳方式

时间:2013-10-08 12:01:02

标签: php html

我总是使用PHP将页面包含到索引文件(index.php)中,但我想要一个干净的URL而不使用GET方法和SEO友好的解决方案,我现在没有其他方法来做到这一点(而不是website.com/index.php?page=关于它将是website.com/about)我在index.php的顶部使用PHP告诉我的网站网站应该是纠察:

<?php
    $page=$_GET['page'];
        if($page!=''){
            $page=$_GET['page'];
        }else{
            $page="homepage";
        }
?>

我使用这个页面应该包括:

<?php
    if($page){
        include("pages/".$page.".php");
    }else{
        include("pages/homepage.php");
    }
?>

我的链接看起来像这样:

<a href="?page=homepage" <?php if ($page == 'homepage') { ?>class="active"<?php } ?>>forside</a>

我真的希望你能给我一个很好的解决方案,编程语言非常适合你 谢谢

1 个答案:

答案 0 :(得分:1)

从SEO的角度来看,我宁愿让格式为http://doma.in/?page=something的网址尝试将其作为http://doma.in/something来实现。

要执行此操作,您有两种选择,具体取决于您网站的具体特征:

  1. '静态'页面,其中代码在页面之间有所不同('静态'php代码仍然可以呈现非常生动的输出,根据例如数据库输入快速变化)。在这种情况下使用

    RewriteEngine on
    RewriteCond  %{REQUEST_FILENAME}  !
    RewriteRule ^(.*)$ /$1.php [L,QSA]
    

    更改.htaccess或httpd.conf以让apache为你做所有网址。

  2. 动态页面,它们都通过相同的ONE通用代码库呈现(这是许多框架所做的)。请关注Redirect all traffic to index.php using mod_rewrite以准备支持此操作。通常将您的关键字放入页面路由到php是更昂贵的。然而,这提供了很多灵活性,可能值得额外的资源。