Pra*_*ant 13 php apache mod-rewrite seo url-rewriting
我正在尝试在我的PHP应用程序中实现URL重写.有人可以分享在PHP和MySQL中实现URL重写的一步一步程序吗?
在我的应用程序中,我想实现以下URL重写,我想重定向
1. http://example.com/videos/play/google-io-2009-wave-intro
2. http://example.com/videos/play/203/google-io-2009-wave-intro
Run Code Online (Sandbox Code Playgroud)
至
1. http://example.com/videos/play.php?title=google-io-2009-wave-intro
2. http://example.com/videos/play.php?id=203
Run Code Online (Sandbox Code Playgroud)
请告诉我如何以上述任何方式实现URL重写.
根据搜索引擎优化,管理,应用程序观点,以下两种类型的URL将是最好的.
1. http://example.com/videos/play/google-io-2009-wave-intro
2. http://example.com/videos/play/203/google-io-2009-wave-intro
Run Code Online (Sandbox Code Playgroud)
Sam*_*son 23
通常,这只不过是启用mod_rewrite模块(您可能已经在主机上启用了它),然后将.htaccess文件添加到您的web目录中.一旦你做完了,你距离完成只有几行.上面链接的教程将照顾您.
只是为了好玩,这里有一个Kohana .htaccess文件用于重写:
# Turn on URL rewriting
RewriteEngine On
# Installation directory
RewriteBase /rootDir/
# Protect application and system files from being viewed
RewriteRule ^(application|modules|system) - [F,L]
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/
RewriteRule .* index.php/$0 [PT,L]
Run Code Online (Sandbox Code Playgroud)
这将做的是获取所有请求并通过index.php文件引导它们.因此,如果您访问过www.examplesite.com/subjects/php,您实际上可能正在访问www.examplesite.com/index.php?a=subjects&b=php.
如果您发现这些URL很有吸引力,我建议您更进一步,查看MVC框架(模型,视图,控制器).它基本上允许您将您的网站视为一组功能:
www.mysite.com/jokes
public function jokes ($page = 1) {
# Show Joke Page (Defaults to page 1)
}
Run Code Online (Sandbox Code Playgroud)
或者,www.mysite.com/jokes/2
public function jokes ($page = 1) {
# Show Page 2 of Jokes (Page 2 because of our different URL)
}
Run Code Online (Sandbox Code Playgroud)
注意第一个正斜杠如何调用一个函数,以及后面的所有函数填充该函数的参数.这真的非常好,让网络开发更有趣!
使用mod重写:
RewriteRule ^videos/play/([0-9]+)/([^.]+)$ play.php?id=$1&name=$2
Run Code Online (Sandbox Code Playgroud)
example.com/play.php?id=203&name=google-io-2009-wave-intro
会起作用
example.com/videos/play/203/google-io-2009-wave-intro
| 归档时间: |
|
| 查看次数: |
30142 次 |
| 最近记录: |