【发布时间】:2011-04-06 14:50:03
【问题描述】:
我正在做一个新项目,我想为这个网站创建 SEO 友好的 URL,比如
mysite.com/first_content、mysite.com/second_content。 URL 必须是动态的,这意味着 URL 必须与内容标题相关。我该怎么做?可以使用htacess吗?
谢谢
【问题讨论】:
我正在做一个新项目,我想为这个网站创建 SEO 友好的 URL,比如
mysite.com/first_content、mysite.com/second_content。 URL 必须是动态的,这意味着 URL 必须与内容标题相关。我该怎么做?可以使用htacess吗?
谢谢
【问题讨论】:
.htaccess 的示例规则(确保 mod_rewrite 已启用):
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?page=$1 [L]
这些规则匹配任何不是现有文件的 URL,并将其传递给您的脚本。
【讨论】:
是的,您可以为此使用.htaccess。网上有很多教程。
用于执行此操作的模块称为mod_rewrite。它根据正则表达式模式重新路由传入的请求。
这些教程解释得很好:
1.A Beginner's Guide to URL Rewriting
2.http://www.easymodrewrite.com/guide-syntax
如果您打算使用 mod_rewrite,您还需要了解正则表达式的基础知识。该网站是目前最好的正则表达式资源之一。
- Regular Expression Tutorial
【讨论】:
在 .htaccess 中:
Options +FollowSymLinks
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule (.*)/(.*)$ index.php?name=$2
</IfModule>
其中 $2 包含第二个括号的内容。
【讨论】:
试试这个:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^.* index.php
</IfModule mod_rewrite.c>
【讨论】: