php - MVC PHP 应用程序的结构

标签 php apache model-view-controller deployment data-structures

我目前正在使用 MVC 技术开发一个 php 应用程序。我开始时没有考虑有用的目录结构。
我现在计划将应用程序部署到 apache2 服务器。这就是它现在的样子。
My current layout

我在服务器上有一个 httpdocs 文件夹,可以从 Web 访问。如果我将所有文件都复制到此目录中,则可能可以访问某些不应该访问的文件。 public文件夹包含必须可以访问的文件。 (我可能需要把我的 index.php 放在那里)

我的问题是:此类应用程序的首选布局是什么?我应该把除 public 以外的所有文件夹都放在里面吗?在 httpdocs 的父文件夹中?

感谢您的建议!

最佳答案

http://httpd.apache.org/docs/2.1/vhosts/examples.html

你可以去那里看看。设置虚拟主机总是很好,这样您就不会混淆您的应用程序。您只需授予对公用文件夹的访问权限。

<VirtualHost *:80>
DocumentRoot /var/www/mvc_app/public
ServerName www.example.com

<Directory /var/www/mvc_app/public>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

</VirtualHost>

关于php - MVC PHP 应用程序的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6966052/

相关文章:

PHP MySQL & AJAX 搜索过滤时间延迟

php - Cake PHP 选择下拉列表

PHP/Apache error.log 不执行 new_line 字符,为什么?

apache - 符号链接(symbolic link)到/project/current/web work 但不是/project/current/web/app.php (Apache/Ubuntu/Symfony2)

java - Jakarta commons HTTPClient 无法使用 php 在我的 apache 服务器上发送发布请求

c# - 我到底在用什么?

php - 使用 file_get_contents() 时无法在 'þ' 上爆炸

php - 无法显示 SELECT 结果 sql

java - 未加载 jar 。无法启动组件 [StandardEngine[Catalina].StandardHost[localhost]

java - 2 个表格 1 个网络应用程序 我该怎么办