0

早上好

我创建了一个我的网址所在的项目

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 时,它不会出现,你能告诉我我在哪里出错了吗?

4

1 回答 1

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/ 不带 /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)中配置的路径!

于 2013-05-23T02:52:50.947 回答