2

我在 Ubuntu 13.04 环境中使用 php。我已经配置了 apache,所以在我的主目录中我有一个public_html目录,我可以在其中保存我正在处理的所有网站,并且我可以使用localhost/~homedir/website. 过去一切正常,但几天前我将 php 降级到 5.3 版以尝试解决一个问题(然后我没有解决),然后我又回到了 php 5.4.9。这发生在几天前,我不记得我是否检查过我的任何网站。无论如何,今天我尝试访问一个,但它没有用。在 apache error.log 文件中,我有这个:

File does not exist: /home/carlo/public_html/website/index.php/welcome
Negotiation: discovered file(s) matching request: /home/carlo/public_html/website/index (None could be negotiated).

我通常使用的.htaccess是这样的:

RewriteEngine on
RewriteBase /~carlo/website/

RewriteCond $1 !^(index\.php|cache|captcha|fonts|forum|media|img|min|css|js|scripts|images|uploads|docs|robots.txt|sitemap.xml|sitemap|public|tools|assets|xd_receiver.htm)

RewriteRule ^(.*)$ index.php/$1 [L]

另一方面,phpmyadmin 正在工作。我可以使用localhost/phpmyadmin. 在/etc/apache2/conf.d/apache.conf我有这个:

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php

<IfModule mod_php5.c>
        AddType application/x-httpd-php .php

        php_flag magic_quotes_gpc Off
        php_flag track_vars On
        php_flag register_globals Off
        php_admin_flag allow_url_fopen Off
        php_value include_path .
        php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
        php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/
</IfModule>

我认为降级和升级php的一些配置文件发生了变化,但我不知道是哪一个以及做什么。你能帮我弄清楚吗?我要发布一些其他信息吗?

编辑:

我想我已经发现了问题所在。显然,升级 php 以下指令被重新激活:

# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
    php_admin_value engine Off
</Directory>
</IfModule>

所以,评论他们解决了这个问题(我希望)

4

1 回答 1

0

添加.htaccess文件并尝试

Options +FollowSymLinks 
于 2013-06-05T09:52:27.903 回答