0

我有一个自定义 MVC 应用程序,其中使用IndexController了我在 WAMP 上构建的命名约定。今天我尝试将它放入Linux(LAMP)。奇怪的是,它给出了错误“找不到页面”。任何人都可以帮忙。我不擅长mod重写,

以下是代码

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

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

网址是

http://hostname/mvc/incident/add

错误是在此服务器上找不到请求的 URL /app01/users/public_html/mvc/index.php。

4

4 回答 4

0

嗨,我通过使用错误重定向功能解决了这个问题。我将以下代码放在我的 .htaccess 文件中

ErrorDocument 403 /~renjith/mvc/index.php
ErrorDocument 404 /~renjith/mvc/index.php

在我使用的 index.php 文件中, $_SERVER['REQUEST_URI'] 使用查询字符串获取 thr URL

于 2012-09-19T14:17:12.887 回答
0

尝试添加:

RewriteBase /mvc/

就在RewriteEngine on指令下,或添加一个前导斜杠index.php

RewriteRule ^(.*)$ /mvc/index.php?request=$1 [L,QSA]
于 2012-09-19T08:37:58.853 回答
0

你需要放一个/之前index.php和一些其他的东西。看看我从 Wordpress 那里得到的例子。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
于 2012-09-19T08:38:08.450 回答
0

我认为 ./htaccess 配置是正确的。我只是通过将此指令添加到我在 debian 上的 apache2.conf 文件来解决它。

<Directory /var/www/html/your_app_folder>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted</Directory>  
于 2017-07-22T10:03:42.573 回答