运用.htaccess使网站URL友好于搜索引擎!



每个人都希望在搜索引擎结果的**页上对其网站进行排名。影响搜索引擎排名的因素很多,其中之一是访客用户可读的URL或搜索引擎优化(SEO)友好的URL。搜索引擎优化友好的URL网址必须反映其网站页面的内容。
有两种方法可以在PHP中创建可读的URL。一,通过使用Request_URi方法,然后通过.htaccess文件。在本文教程中,我将使用.htaccess文件为网站提供SEO友好的URL。您还可以使用相同的做法为任何博客或商店创建相同的操作。
让我们开始吧。
假设您正在运行使用自定义PHP代码开发的网站。因此,无论您何时在网站中插入新帖子,该网址都会像这样生成:
www.XXX.com/index.php?blog_id=1234
在本教程中,我们将把上面的URL改为:
www.XXX.com/my-seo-url /
因此,只要有人运行上述网址,就会生成相同的内容,因为您在将网址ID提供给URL时会生成相同的内容。
第1步:表格中的更改
首先,您需要更改保存文章的表格。在其中创建一个新列并将其命名为seo-url。
第2步:功能,使搜索引擎友好的URL
让我们创建一个函数,根据文章标题为您生成SEO友好的URL。
函数seo_url($ vp_string)
{
$ vp_string = trim($ vp_string);
$ vp_string = html_entity_decode($ vp_string);
$ vp_string = strip_tags($ vp_string);
$ vp_string = strtolower($ vp_string);
$ vp_string = preg_replace('〜[^ a-z0-9 _。]〜','',$ vp_string);
$ vp_string = preg_replace('〜〜',' - ',$ vp_string);
$ vp_string = preg_replace('〜 - +〜',' - ',$ vp_string);
$ vp_string。=“/”;
返回$ vp_string;
}
上述函数将文章标题作为字符串并返回SEO URL。喜欢这个:
我-SEO-URL /
您需要将此网址保存在我们在上一步中创建的同一列中。
第3步:更改.htaccess文件
由于我们已经生成了SEO网址,因此让我们对.htaccess进行一些更改,这会将URL重定向到保存在数据库中的内容。如果您尚未创建任何文件,请创建一个新文件并将其命名为.htaccess。现在将以下代码粘贴到它中:
RewriteEngine On
RewriteCond%{SCRIPT_FILENAME}!-d
RewriteCond%{SCRIPT_FILENAME}!-f
RewriteRule ^(([A-Za-z0-9] + [ - ] + [A-Za-z0-9] +)+ [/])$ index.php?blog_url = $ 1 [NC,L] #Handle博客请求
让我们一步一步了解上述代码:
**行告诉Apache我们将重写一些规则
RewriteEngine On
第二行和第三行是检查调用URL不是文件或目录名称的条件。如果它是其中之一,则URL将不会被重写。
RewriteCond%{SCRIPT_FILENAME}!-d
RewriteCond%{SCRIPT_FILENAME}!-f
*后一行是我们的重写URL。现在这是如何工作的:RewriteURL之后的单词 “ ^(([A-Za-z0-9] + [ - ] + [A-Za-z0-9] +)+ [/])$ ”是一个正则表达式在完整域名的“ 斜杠(/) ” 后面检查URL的表达式。您可以使用此网站了解有关正则表达式的更多信息。
现在,如果URL与Regex表达式相匹配,那么匹配的URL将被重定向到blog_url变量中的index.php?blog_url =(匹配的 URL)。
注意:如果.htaccess文件中出现错误,您将收到500内部服务器错误。
第4步:索引文件的更改
现在,在URL的 index.php文件中,您将使用$ _GET ['blog_url']获取此URL 并匹配表中的该URL,并且可以快速显示完整文章。例如,在您的index.php文件中,您的数据库查询将被更改为:
$ url = $ _GET ['blog_url'];
$ query =“SELECT articles.article_name,articles.article_content,categories.category_name,articles.img,users.u_fname,users.u_lname,DATE_FORMAT(articles.date,'%d %Y')作为日期
从文章
INNER JOIN用户
ON users.user_id = article.user_Id
INNER JOIN文章
ON articles.article_id = article.article_id
INNER JOIN类别
打开categories.category_id = articles.category_id
WHERE articles.url ='$ url'“;
而且所有的东西都会保持不变。当您运行新的URL时,您将获得与发送网站ID时相同的内容。
总结
在上面的文章中,我教你如何创建SEO友好的URL,需要做什么改变以及如何重定向URL。如果您无法通过我们的文章了解它,请随时与我联系。我会尽快回复你。