htaccess和php应用程序导航
我对我的简单网络应用程序上的一个小问题感到疯狂。我用PHP做了一个简单的日历应用程序,遵循MVC模式 Dirs结构如下所示:htaccess和php应用程序导航,php,.htaccess,model-view-controller,Php,.htaccess,Model View Controller,我对我的简单网络应用程序上的一个小问题感到疯狂。我用PHP做了一个简单的日历应用程序,遵循MVC模式 Dirs结构如下所示: 日历(根目录) --应用程序/ --控制器/ --核心/ --模型/ --观点/ init.php --公开的/ --css/ --剧本/ --其他指令。。。 --.htaccess --index.php 每个请求都是这样提出的: /calendar/public/[controller\u name]/[controller\u method]/[extra\u p
日历(根目录)
--应用程序/
--控制器/
--核心/
--模型/
--观点/
init.php
--公开的/
--css/
--剧本/
--其他指令。。。
--.htaccess
--index.php
每个请求都是这样提出的:
/calendar/public/[controller\u name]/[controller\u method]/[extra\u params]
例如:calendar/public/home/all_events
:调用all_events
方法的home
类,然后以右视图显示
在每一个view.php
中,我都使用经典的锚点链接/button/etc,使用href
值,比如:
例如,href=“booking/room”
,以便呼叫控制器进行预订并指定什么(房间)
一切似乎都很好,但只是局部的
当我试图把它放在服务器上时,所有的链接都不起作用,导致404页面找不到
我想把它放到一个现有的Joomla网站上。每个请求都会进入一个名为sitename.com/
的特定目录,其中包含所有Joomla文件以及应用程序的“我的目录”
在那里,我只能访问应用程序主页(默认),但每个链接都不起作用
我什么都试过了,但似乎什么都不管用
我认为问题在于Apache配置(或.htaccess
)。它死了,出现404页面未找到错误,并且从未调用我的index.php
这是我的htaccess:
选项-多视图
重新启动发动机
RewriteBase/sitename.com/calendar/public/
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^(+)$index.php?url=$1[QSA,L]
或者,我无法以这种方式链接页面,但如何从html调用特定的控制器/方法?您的服务器上是否启用了mod_rewrite?转到SSH并键入这两个命令以启用它
sudoa2enmod rewrite;服务apache2重启代码>顺便说一下,实现模式的最佳方法是配置一个指向公用文件夹的虚拟主机。我没有重新启动Apache的权限,但是应该启用mod_rewrite,但不确定如何使用它。我正在尝试不同的配置,但没有任何效果。什么是虚拟主机?我如何使用它?这是由主机提供的服务吗?我有一个经济计划(这是一个非常小的网站,应用程序将由一小部分注册用户使用)。你需要成为根。认真的人在专用服务器和VPS服务器上工作;)对于root,键入sudo-i
您的服务器上是否启用了mod_rewrite?转到SSH并键入这两个命令以启用它sudoa2enmod rewrite;服务apache2重启代码>顺便说一下,实现模式的最佳方法是配置一个指向公用文件夹的虚拟主机。我没有重新启动Apache的权限,但是应该启用mod_rewrite,但不确定如何使用它。我正在尝试不同的配置,但没有任何效果。什么是虚拟主机?我如何使用它?这是由主机提供的服务吗?我有一个经济计划(这是一个非常小的网站,应用程序将由一小部分注册用户使用)。你需要成为根。认真的人在专用服务器和VPS服务器上工作;)对于root,键入sudo-i