当前位置: 首页 > 知识库问答 >
问题:

php mvc中的虚空配置文件URL不工作

王景山
2023-03-14

我正在制作一个社交网站,在那里我创建了自己的PHP mvc,但我在url重写方面遇到了问题。我的mvc就是这样工作的。

如果这是域www.example.com/manage/posts/11111,则manage是类,post是该类中的方法&1111是一个参数

问题是,我不能创建虚荣配置文件网址,因为他们将不工作。我希望每个用户都有虚荣配置文件url ie www.example.com/username,但这将搜索一个名为username的类。

请指教我如何

a)我不需要添加诸如www.example.com/users/username之类的任何内容,就可以实现虚拟配置文件URL(如www.example.com/username)。

我知道还有其他PHP MVC,但我只想使用我自己的

这是我当前的htaccess代码::

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/?$  index.php?ref_url=$1 [NC,L,QSA]
</IfModule>

共有2个答案

廖君昊
2023-03-14

您应该首先创建一个路由器,将您的URL路由到控制器/类。我更喜欢Klein RouterFastroute,因为它很简单。

放置路由器后,执行您想要的操作:

示例

$router=new Router;

$router->addroute("/[:username]",
   function(){ 
       //Bring UserAccount Details from DB using [:username]
   }
);

$router->addroute("/manage/posts/[:id]",
   function(){
       //Get Post details using [:id]
   }

$router->dispatch();

**nb:**这只是路由器使用情况的基本表示

哈雅珺
2023-03-14

我不知道为什么所有的人都试图构建他们自己的框架,有那么多真正好的框架都考虑到了安全性等等。但好吧,我想你的问题是你的重写规则。

RewriteRule ^(.*)$  index.php?ref_url=$1 [NC,L,QSA]

通常,您应该将所有输入重写到给定的文件中,解析url并调用所需的控制器。为了更好地理解Symfony2路由组件。

http://symfony.com/doc/current/components/routing/introduction.html

 类似资料:
  • 理解虚拟机的配置文件:Vagrantfile。 Vagrantfile 在项目的目录下面有个 Vagrantfile 文件,它是我们执行 vagrant init 命令创建的一个虚拟机的配置文件。在这个配置文件里可以包含项目使用的虚拟机的相关配置。比如我在执行 vagrant init 命令的时候加了一个 centos/7 ,指定了虚拟机使用的镜像的文件,这样创建的这个配置文件,实际的内容会是这样

  • 这适用于Pax Exam native container(Pax Exam 2.3.1),但不适用于Pax Exam Karaf container(0.5.2): 检查包是否已安装的测试:

  • 我更改为配置文件和.htaccess文件。以下文件, Config.php .htaccess 重新启动发动机 秘书长/52322/ 重写Cond%{REQUEST_FILENAME}!-f 重写cond%{REQUEST_FILENAME}-D 重写规则 ^(.*)$ index.php?/1美元[L, QSA] 发生错误在此服务器上找不到请求的URL /52322/login/。 请帮帮我。

  • 配置文件分为用户级配置和项目级配置。 用户级配置包含用户的环境及 UI 相关的选项,包括: 用户选项 中的所有内容。 扩展工具,包括已配置的扩展列表。 其他工具中的UI相关选项,例如 Target 组件下 站点地图 的选定视图。 项目级配置包含在特定目标应用程序上执行的工作相关的选项,包括: 项目选项中的所有内容。 单个Burp工具中的非UI相关选项,例如 代理 (Proxy) 和 扫描器 (Sc

  • 我希望通过Workday API检索Workday worker(又名employee)的web配置文件URL。使用案例是,我正在构建一个聊天机器人来检索用户信息,我希望能够深入链接到工人(员工)的web配置文件。 问题是我不能做以下任何一项: 从API获取web配置文件URL 从API中的数据创建web配置文件URL web配置文件URL如下所示。用户ID看起来像就在扩展名,因为这是员工档案之间

  • 我的web.xml是由eclipse生成的,看起来如下所示: 那么这里的问题是什么呢?