漂亮的网址不在https协议上工作laravel 5.2

时间:2017-03-16 10:41:14

标签: apache .htaccess redirect laravel-5.2 ubuntu-14.04

漂亮的网址正在进行中,当它出现在" http"使用本教程(https://laravel.io/forum/09-15-2015-removing-indexphp-from-url-laravel-5116)我想出来了,但我配置了" https"它停止了工作 (未找到 在此服务器上找不到请求的URL /登录名。 Apache / 2.4.7(Ubuntu)服务器在wasamar.com.ng端口443),我做错了什么?

顺便说一句,我使用的是ubuntu云服务器14.04

这是我的虚拟主机配置/etc/apache2/sites-avalable/wasamar.com.ng.conf

<VirtualHost *:80>                                                                           
    # The ServerName directive sets the request scheme, hostname and port that           
    # the server uses to identify itself. This is used when creating                     
    # redirection URLs. In the context of virtual hosts, the ServerName                  
    # specifies what hostname must appear in the request's Host: header to               
    # match this virtual host. For the default virtual host (this file) this             
    # value is not decisive as it is used as a last resort host regardless.              
    # However, you must set it for any further virtual host explicitly.                  

    ServerName wasamar.com.ng                                                            
    ServerAlias www.wasamar.com.ng                                                       

    ServerAdmin info@wasamar.com.ng                                                      
    DocumentRoot /var/www/html/wasamar/public/                                           

    # Redirect permanent "/" "https://wasamar.com.ng/"                                   

    <Directory /var/www/html/wasamar/public/>                                            
             Options Indexes FollowSymLinks                                              
                     AllowOverride All                                                   
                     Require all granted                                                 
    </Directory>                                                                         

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,               
    # error, crit, alert, emerg.                                                         
    # It is also possible to configure the loglevel for particular                       
    # modules, e.g.                                                                      
    #LogLevel info ssl:warn                                                              

    ErrorLog ${APACHE_LOG_DIR}/error.log                                                 
    CustomLog ${APACHE_LOG_DIR}/access.log combined                                      

    # For most configuration files from conf-available/, which are                       
    # enabled or disabled at a global level, it is possible to                           
    # include a line for only one particular virtual host. For examplethe               
    # following line enables the CGI configuration for this host only                    
    # after it has been globally disabled with "a2disconf".                              
    #Include conf-available/serve-cgi-bin.conf                                           
    </VirtualHost>                                                                               

   <IfModule mod_ssl.c>                                                                         
   <VirtualHost *:443>                                                                          

    ServerAdmin info@wasamar.com.ng                                                      
    ServerName wasamar.com.ng                                                            
    DocumentRoot /var/www/html/wasamar/public/                                           

    #   SSL Engine Switch:                                                               
    #   Enable/Disable SSL for this virtual host.                                        
    SSLEngine on                                                                         

    <Directory /var/www/html/wasamar/public/>                                            
             Options Indexes FollowSymLinks                                              
             AllowOverride All                                                           
             Require all granted                                                         
    </Directory>                                                                         

    #   A self-signed (snakeoil) certificate can be created by installing                
    #   the ssl-cert package. See                                                        
    #   /usr/share/doc/apache2.2-common/README.Debian.gz for more info.                  
    #   If both key and certificate are stored in the same file, only the                
    #   SSLCertificateFile directive is needed.                                          
    SSLCertificateFile /etc/apache2/ssl/wasamar.com.ng/apache.crt                        
    SSLCertificateKeyFile /etc/apache2/ssl/wasamar.com.ng/apache.key                     
    </VirtualHost>                                                                               

    </IfModule> 

这是我的.htaccess文件

<IfModule mod_rewrite.c>                                                    
<IfModule mod_negotiation.c>                                            
    Options -MultiViews                                                 
</IfModule>                                                             

RewriteEngine On                                                        

# Redirect Trailing Slashes If Not A Folder...                          
RewriteCond %{REQUEST_FILENAME} !-d                                     
RewriteRule ^(.*)/$ /$1 [L,R=301]                                       

# Handle Front Controller...                                            
RewriteCond %{REQUEST_FILENAME} !-d                                     
RewriteCond %{REQUEST_FILENAME} !-f                                     
RewriteRule ^ index.php [L]                                             

# Handle Authorization Header                                           
RewriteCond %{HTTP:Authorization} .                                     
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]           

# Force SSL                                                             
RewriteCond %{HTTPS} !=on                                               
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]              

1 个答案:

答案 0 :(得分:0)

我认为https重定向应该是第一个:

RewriteEngine On

# Force SSL
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
...