Phalcon PHP Project没有映射(显示目录视图的服务器)

时间:2016-10-27 09:23:43

标签: php apache .htaccess phalcon

我正处于将网站迁移到Phalcon PHP框架的早期阶段。但是我偶然发现了第一个问题。

我已经按照各种教程的规定将Phalcon项目设置得很好。我已经检查过我的服务器安装了Phalcon它已经安装了,我已将项目上传到/ www目录。但是现在当我浏览URL而不是获得漂亮的渲染网页时,我只是得到了我的服务器的目录视图(截图1)。即使我深入研究Phalcon项目的目录,它仍然只进入目录视图(截图2)。只有当我浏览到/ phalcon-project / public时,才会通过公共目录中的bootstrap index.php识别并从控制器和视图中呈现索引(截图3)。

关于它为什么不映射的任何想法?请注意,正如您在我的顶级(/ www)中看到的,我有2个目录;让我们称之为/ phalcon-project和/ other-website,因为我有另一个站点从那里运行(该站点上没有PHP框架,只是一个简单无聊的旧静态站点)我的URL www.phalcon-project.com映射到/ www目录和我的网址www.other-site.com映射到/ www / other-site ...我没有看到这应该导致问题,但可能是那个,还是别的?

屏幕截图1:

Screenshot 1

屏幕截图2:

Screenshot 2

屏幕截图3:

Screenshot 3

1 个答案:

答案 0 :(得分:1)

听起来您没有正确设置虚拟主机。 您可以修改它以生成root / www / public,也可以使用.htaccess文件,详见Phalcon网站。

https://docs.phalconphp.com/uk/latest/reference/apache.html

因此,在您的情况下,您将在文档根目录中的.htaccess文件中包含以下内容。 (/ WWW)

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteRule  ^$ public/    [L]
  RewriteRule  ((?s).*) public/$1 [L]
</IfModule>

然后是/ www / public目录中的以下.htaccess文件。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^((?s).*)$ index.php?_url=/$1 [QSA,L]
</IfModule>