Symfony 2 - 生产项目配置

时间:2013-10-22 18:49:19

标签: symfony

我完成了基于Symfony2的网站,并且它正在app_dev.php上运行。我希望通过app.php让用户看到它。

1)如何配置项目以便用户可以通过app.php

访问它

2)如何从网址app.php删除domain.com/app.php/{slug}

完成网站开发后还需要做些什么?

谢谢!

2 个答案:

答案 0 :(得分:1)

  

1)如何配置项目以便用户可以通过app.php访问它?

在开发网站时使用app_dev.php - 开发环境。因此,您可以看到开发人员工具栏。如果您已完成网站开发,则需要使用以下命令更改为prod环境:

php app/console cache:clear --env=prod --no-debug
php app/console assets:install web_directory
php app/console assetic:dump web_directory
  

2)如何从url domain.com/app.php/{slug}中删除app.php?

要从网址中删除app.php,您可以将项目的网络根目录设置为网络文件夹。使用虚拟主机的apache最好这样做,但有很多方法可以使用htaccess。

以下是我Virtual Hosts

的示例
<VirtualHost *:80>
    DocumentRoot "path_to_symfonyTest/web"  
    ServerName "symfonyTest"  
    <Directory "path_to_symfonyTest/web">
        DirectoryIndex app_dev.php
        AllowOverride All
        Order allow,deny
        Allow from all
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ app_dev.php [QSA,L]
        RedirectMatch permanent ^/app_dev\.php/(.*) /$1
    </Directory>
</VirtualHost>

或者如果您需要使用htaccess来实现此目的,请参阅此site

您可以查看更多信息How to deploy a Symfony2

答案 1 :(得分:0)

如果使用apache,则可以更改vhost定义:

DirectoryIndex app.php

编辑:基于评论

然后你可以这样设置:

server {
    index app.php;
}

也请检查此资源:http://wiki.nginx.org/Symfony