如果我在.htaccess文件中使用“RewriteEngine on”指令,为什么public_html中的目录会消失?

时间:2014-02-19 13:41:41

标签: php .htaccess ubuntu apache2

自从上次使用apache2 userdir对我的开发机器进行ubuntu更新以来,我遇到了一个奇怪的问题。我在位于/ home / myUser / public_html / project /的apache2 userdir中有一个PHP项目。在项目文件夹中,我有一个带有“RewriteEngine on”指令的.htaccess文件。

如果对指令进行评论,浏览器会在输入localhost / ~myUser /时向我显示该文件夹。但是如果我使用该指令,localhost / ~myUser / project /就会消失。如果我尝试通过手动键入URL来输入它,我会收到“未找到”错误。有什么想法吗?

我正在使用Apache 2.4.6和PHP 5.5.3。

/编辑:问题不在于“RewriteEngine on”,而是“RewriteRule”。评论出来也会再次显示项目目录。

htaccess的:

RewriteEngine   on

RewriteRule     ^(.*)$  /~myUser/project/php/$1   [P]

php_value upload_max_filesize 32M
php_value post_max_size 33M
php_value max_execution_time 300

userdir.conf的内容:

<Directory /home/*/public_html>
        #AllowOverride FileInfo AuthConfig Limit Indexes
        AllowOverride all
        Options MultiViews Indexes FollowSymlinks IncludesNoExec
        Require all granted
</Directory>

0 个答案:

没有答案