1

我有一个友好的 URL 模块将我的索引页面重定向到搜索页面。如果我用我的链接编写 index.php,那么它会将我重定向到索引页面。如果我尝试访问注册页面,它会给我错误

ABS_PATH 未加载。不允许直接访问。

如果我尝试访问任何类别,它会给我一个错误,例如

未找到

在此服务器上找不到请求的 URL /for-sale_1/toys-games-hobbies_1/。

此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。

我检查了我的错误日志,它给了我这个错误

<IfModule mod_rewrite.c>没有</Ifmodule>

在本地服务器上效果很好,但在使用 Apache 的实时删除上效果不佳。

类别链接在实时站点上有效,但是当我单击注册或登录或发布链接时,它会给出错误:

ABS_PATH 未加载。不允许直接访问。

这是在 generate_rules.php 中定义的注册规则

$rewrite->addRule('^user/register$', 'index.php?page=register&action=register');
define('REL_WEB_URL', '/home/xxx/public_html'); 
define('WEB_PATH', 'xxx.com/';); 
4

3 回答 3

3

您应该禁用 MultiViews 选项。在您的 .htaccess 文件中写入以下行(它应该位于 OSClass 安装的根文件夹中):

Options -MultiViews

此外,您应该确保 .htaccess 文件存在。

于 2012-01-16T12:22:00.940 回答
0
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    Options -MultiViews
</IfModule>

创建.htaccess文件,复制根文件夹工作!

于 2013-02-01T13:52:32.150 回答
0

尝试在服务器的配置和/或文件中禁用的协商模块或禁用 MultiViews 指令.htaccess

于 2012-01-09T17:58:27.537 回答