mod_rewrite被禁用但/ index仍然加载

时间:2014-01-24 13:42:01

标签: php mod-rewrite

我有一个mod_rewrite的问题,我无法理解什么是错的。

首先我做了一个查询字符串重写,有这样的东西:

/api/call

而不是

/api.php/call.php

这在打印请求时不起作用,它是空的,而如果我输入url

/api/call/test=5

请求参数返回test = 5

我在虚拟主机中添加了Allow from all,但它仍然无效。

然后我尝试禁用mod_rewrite,令我惊讶的是,调用/ api仍然加载了/api.php和/ index loaded /index.html。

这真的很奇怪,因为如果禁用mod_rewrite就不会发生这种情况。事实上,如果我在我的本地WAMP服务器上尝试它,则会显示未找到的404。

这意味着某些地方在Ubuntu服务器上有某种重写但我无法理解这是如何使用mod_rewrite被禁用的。

有什么想法吗?

提前致谢

编辑(网站可用内容)

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
            Options FollowSymLinks
            AllowOverride All
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

Apache重启成功,重启没有重新加载。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

尝试命令:

a2dismod rewrite

然后重启apache。还要确保根目录中没有指定mod-rewrite设置的.htaccess文件。