替换web / app_dev,php无法在symfony2中运行

时间:2013-05-22 06:15:27

标签: symfony

早上好

我创建了一个我的网址为

的项目

http :: // my ip.address / jobs / web / app_dev.php / login将显示我的项目登录页面  现在我想用www.jobs.com替换url,它应该显示登录页面

ServerName www.jobs.com.localhost
DocumentRoot "/var/www/jobs/web"

<Directory /var/www/jobs/web>
   DirectoryIndex app.php
    AllowOverride None
    Order allow,deny
    Allow from All
    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ /app.php [QSA,L]
    </IfModule>
</Directory>

但是当我在网址中输入www.jobs.com.localhost时,它就不会出现,你只能说我在哪里犯了错误

1 个答案:

答案 0 :(得分:0)

这个问题不直接与symfony相关......

您必须确保已将www.jobs.com.localhost配置为您的主机文件。

主机文件是DNS / ISP无法解析的IP地址列表。

通常可以在...找到它。

  /etc/hosts                                # Linux / OSX

......或

 C:\Windows\System32\drivers\etc\hosts      # Windows

找到此文件并添加以下行:

 127.0.0.1 www.jobs.com.localhost

如果您这样做了,只要您配置了正确配置的虚拟主机,就可以从浏览器访问www.jobs.com.localhost。

ServerName www.jobs.com.localhost

第二件事是......

如果您希望原始的your-ip / login页面显示为主页(your-ip /或www.jobs.com.localhost / without / login) - 您有2个选项。

选项1 - 更改登录路径

# app/config/security.yml

security:
    firewalls:
        your_firewall_name:
            # ...
            login_path: /     # changed this /login to /

选项2 - 如果未登录,则禁止访问所有网页

# app/config/security.yml

security: 
    # ...
    access_control:
        # ...
        path: ^/, roles: [IS_AUTHENTICATED_FULLY, IS_AUTHENTICATED_REMEMBERED]     

现在,每个未在当前会话期间使用其凭据登录的用户(角色:IS_AUTHENTICATED_FULLY)或已被“记住我”(IS_AUTHENTICATED_REMEMBERED)自动登录的用户将被拒绝访问您的页面。

这些用户将自动重定向到您的登录表所在的security.firewalls.your_firewall_name.login_path(默认值:/ login)配置的路径!