2014-10-09 35 views
1

您好我想爲symfony 2網站使用ssl頁面。我已經添加我無法使用symfony 2的https工作

schemes: [https] 

到應用程序/配置/ routing.yml中

我也試着將它添加到在包本身的routing.yml。

是不能解決的https://www.mysite.com地址

我缺少任何東西,或需要其他做些什麼?由於

進一步的測試,我已經改變了security.yml到

 security: 
providers: 
    in_memory: 
     memory: ~ 

firewalls: 
    dev: 
     pattern: ^/(_(profiler|wdt)|css|images|js)/ 
     security: false 

    default: 
     anonymous: ~ 
     #anonymous: ~ 
     #http_basic: 
     # realm: "Secured Demo Area" 

access_control: 
# - { path: ^/admin/secured/hello/admin/, roles: ROLE_ADMIN } 
    - { path: ^/signup, requires_channel: https } 

這個本地工作在Ubuntu和Apache,它重定向到https。然而,在我的活服務器Centos上,安裝了plesk的apache並沒有做任何事情,只是保持爲http。必須是服務器上的一些配置

+0

您是否在您的網絡服務器上設置了SSL? – Gerry 2014-10-09 12:25:41

+0

是的,當然,如果我轉到https://www.mysite.com,但在https://獲取註冊頁面和登錄頁面的路由時,它是有用的 – GAV 2014-10-09 13:34:56

+0

顯示的是什麼錯誤消息? – ferdynator 2014-10-09 15:53:59

回答

0

我從來沒有找到一種方式讓它通過security.yml文件工作,並且更改.htaccess不會像你需要使用它來路由symfony的web/app.php 。我找到的解決方案是我的特定服務器使用plesk進行管理,它涉及一些額外的步驟。

Create a file called vhost.conf in /www/vhosts/system/yousite.com/conf/ 

添加這些行

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

保存文件

你也需要確保的權限是正確的,通過SSH運行以下命令:

chown -R apache /var/www/vhosts/system/yoursite.com/conf 
chmod -R 644 /var/www/vhosts/system/yoursite.com/conf 

然後運行:

/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=yoursite.com 

應用更改並使httpd.conf文件讀取vhost.conf。