如何修改htaccess url重写Facebook的工作方式

时间:2014-02-25 01:23:14

标签: php apache .htaccess mod-rewrite url-rewriting

我想自动收集用户输入的相应路径名,例如使用facebook。

用户创建一个名为JohnDoe777的页面/用户个人资料,因此他们的网址为:facebook.com/JohnDoe777。

怎么能这样做?我知道它处理.htaccess文件,但我需要仔细说明如何执行此操作,以防万一我的本地服务器上没有任何问题。

2 个答案:

答案 0 :(得分:0)

这就是我们所说的URL重写。

你可以在这里找到一个很好的例子

http://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/

答案 1 :(得分:0)

这与重写无关,尽管可以使用重写规则来完成。

在FaceBook和其他大量网站中,您可以通过在PHP / ASP / JSP / perl / etc文件中解析该信息,仅通过URL上键入的内容来访问信息。这个想法是,当存储一些数据时,将为该组数据分配唯一的URL。然后可以使用该URL访问数据。

这个伪代码有助于实现这个想法

data = false;

requested_url = 'http://www.example.com/JohnDoe777';

data_to_retrieve = JohnDoe777

check_if_data_in_database = query_the_database_for( 'JohnDoe777' );

if ( check_if_data_in_database === false ) {
    check_if_data_in_file = look_for_file( 'JohnDoe777' );
}

if ( data !== false ) {
    process_and_present_data( 'JohnDoe777' );
}

if ( data === false ) {
    tell_user_an_error_happened_or_no_data_available
}

当然,您可以对

之类的内容进行重写
example.com/JohnDoe777

example.com/index.php?user=JohnDoe777

但是这两种方法都可以用于收集/呈现已创建和存储的数据,而重写步骤只是一个额外的,常见的,但不是必需的。