Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在我的网站上为许多用户创建指向同一模板页面的链接?_Php_Application Design - Fatal编程技术网

Php 如何在我的网站上为许多用户创建指向同一模板页面的链接?

Php 如何在我的网站上为许多用户创建指向同一模板页面的链接?,php,application-design,Php,Application Design,我正在制作一个网站,人们在这里向用户发送匿名消息。 每个用户都应该有一个“公共”页面,其中只有他/她的图像、姓名和文本区域,以便每个人都可以向他们写信 注册时,每个用户都会有一个链接与其他用户共享,这样他们就可以去那里写他们的秘密消息,例如:mywebsite.com/john.php,对于另一个用户mywebsite.com/alice.php 问题是,我只想制作一个页面作为模板,当我们请求John的页面时,将从数据库中查询他的图像和姓名。那么,对于每个被分配了不同链接的用户,我如何做到这一点

我正在制作一个网站,人们在这里向用户发送匿名消息。 每个用户都应该有一个“公共”页面,其中只有他/她的图像、姓名和文本区域,以便每个人都可以向他们写信

注册时,每个用户都会有一个链接与其他用户共享,这样他们就可以去那里写他们的秘密消息,例如:
mywebsite.com/john.php
,对于另一个用户
mywebsite.com/alice.php

问题是,我只想制作一个页面作为模板,当我们请求John的页面时,将从数据库中查询他的图像和姓名。那么,对于每个被分配了不同链接的用户,我如何做到这一点呢?我不希望人们请求-例如-
myWebsite.com/template.php?user=John
,我希望他们请求
myWebsite.com/John


这可能吗?任何建议都会很棒,因为我是一个初学者,而且很困惑。

如果您使用Apache作为服务器,您可以使用
mod_rewrite
将其改写为相同的
index.php
文件,或任何您喜欢的URL模式。它相当强大

例如,此配置将所有“未找到文件/目录”案例重定向到
index.php
文件。您需要将其放入Apache
VirtualHost
config指令或.htaccess(如果您有
AllowOverride all
set)


重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_URI}=/图标文件
重写规则^index.php[L]
您可以对设置执行类似的操作

然后,您必须在
index.php
上执行自己的URL检测,以正确地为特定URL提供内容。您可以尝试以下库。

几种方法

  • 重写Mod(作为考拉的答案)
  • 定制自己路线的框架(例如)
  • $\u服务器['REQUEST\u URI']

  • 非常感谢,我会尽快读到这一切。。但在此之前,我有一个简短的问题。。进行此修改后,该链接是否会出现在请求页面的url中,例如,如果我们请求了website.com/alice,并且它成功地将我们重定向到模板页面,则链接是否会看起来像website.com/template“在重定向后”nginx
    try\u文件
    绝对是别名,而不是重定向,这就是你所说的。Apache
    mod_rewrite
    模块功能更强大,因此它可以执行重定向和别名。我上面提供的重写规则就是别名,我看了一个关于mod rewrite的教程“在htaccess中”。。想法开始浮现在脑海中。。非常感谢你的指导。。
    <IfModule mod_rewrite.c>
      RewriteEngine on
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_URI} !=/favicon.ico
      RewriteRule ^ index.php [L]
    </IfModule>