php SEO urls重写关键字和来自mysql的查询

标签 php mysql url seo

首先,在 .htaccess 文件中我放了这行

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)?$ index.php?key=$1 [L]

我在 MySQL 中也有表

| aliasID |     query     | keyword |
--------------------------------------
|    1    | site=articles | articles |

现在在 index.php 中我得到了

    if(isset($_GET['key'])) $key = $_GET['key'];
    else $key = '';

    if($key) 
    { 

        $invalide = array('\\','/','/\/',':','.');
        $key = str_replace($invalide,' ',$key);

        $checkiskey=mysql_fetch_array(safe_query("SELECT * FROM seoaliasy WHERE keyword='".$key."'"));

        if($checkiskey) {

            // here missing code

        } else { echo '404'; }

    } else {

    echo 'main page';

    }

现在我想知道我需要在“//here missing code”位置放置什么代码,其中包括从 MySQL 列的 MySQL 查询调用的页面内容。

站点的正确地址是 www.example.com/index.php?site=articles(如果这是在互联网浏览器的地址栏中输入的,则该页面会正确显示)...但我需要同一页面必须如果我在地址栏中输入 http://www.example.com/articles,则包含在内(因此从正确地址查询 [site=articles] 被转换为来自 MySQL 中 [keyword] 列的键)

很简单,我正在寻找基于带有“查询”和“关键字”的 MySQL 表的简单 SEO URL 重写的解决方案。

最佳答案

我不确定您想从哪里访问数据。但是您可以使用 CURL 在 PHP 中调用任何页面的内容

    $ch = curl_init("YOUR_PAGE_URL");
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($ch);       
    curl_close($ch);
    echo $output;

关于php SEO urls重写关键字和来自mysql的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26617652/

相关文章:

mysql - 我们可以优化这个 MySQL SELECT 查询(2 个嵌套 SELECT 和 2 个 INNER JOIN)

c++ mysql连接器从字符串中选择id

jquery - 如何使用 jquery 操作查询字符串

php - url_title codeigniter 显示下划线而不是连字符

swift - 在 Realm 中选择一列并单击链接

php - Cookie 嗅探器 - PHP

php - 从具有相同名称的多个选择框中获取值?在 jquery 和 php 中包含它的值

php - Lumen中 '$app->run()'的实现在哪里?

mysql 查询优化(错误的索引?)避免文件排序

Javascript document.write() 指向另一个页面