【发布时间】:2016-12-01 18:41:49
【问题描述】:
我正在尝试使用 PHP 内置服务器或 Apache2 服务器在 Windows 上运行 Symfony PHP 应用程序。 Symfony 版本是 2.0.10,PHP 版本是 5.6.28。
当我使用指向 Symfony 应用程序 web 目录的 Apache 服务器时,在浏览器中打开站点只列出目录内容,而不是运行应用程序。当我使用在同一位置(项目文件夹的 web 目录)启动的 PHP 内置服务器时,在浏览器站点根目录中打开会导致 404 resource not found 错误,因此 Symfony 应用程序没有启动。当我尝试使用控制台命令php app/console server:run 启动 symfony 应用程序时,出现错误,说 server:start 命令不存在。我无法让 Symfony 主页显示(意味着启动应用程序)。
Apache2 httpd.conf 文件内容为:
ServerRoot "c:/Apache24"
Listen 80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule php5_module C:/PHP/php5apache2_4.dll
<IfModule php5_module>
DirectoryIndex index.html index.php
AddHandler application/x-httpd-php .php
PHPIniDir "C:/PHP"
</IfModule>
DocumentRoot "C:\projects\MySymfonyApp\web"
<Directory "C:\projects\MySymfonyApp\web">
DirectoryIndex app.php
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
【问题讨论】:
-
“说 server:start 命令不存在”This was added in Symfony 2.6.
-
“在浏览器中打开站点只列出目录内容”,这意味着您的服务器配置不正确。与 Symfony 无关。