2017-05-28 8 views
0

"#!"私のウェブサイトのURLから。そして、私はそれを完全に設定することができました、そして、それは働いています。角度のフロントエンドとlaravelバックエンドでHTML5モードをtrueにすると、正しく動作しません。

問題は、自宅以外のサブURLに移動してページをリロードすると、ページが見つからないということです。しかし、ホームページのリンクをクリックすると、同じサブURLを開くことができます。

例えば、

ホームページURL:http://abcxyz.com

サブURL :: http://abcxyz.com/qaz

私は、次のように私の角度のアプリケーションでHTML 5のモードを設定している:

$locationProvider.html5Mode(true); 
$locationProvider.hashPrefix(''); 
:1)HTML 5モードを有効にしますベースタグindex.blade.phpファイルには、ヘッドタグで

設定10

2)、私は設定しています:

再び

<base href="/" /> 

3)設定htaccessファイル、私は自分を設定しようとしました。このように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] 

    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR] 
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d 
    RewriteRule^- [L] 
    RewriteRule^index.php 

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

また、私はLaravelバックエンドを使用しています。ですから、私が.htaccessファイルを適切にセットアップするのを助けてください。ここで何かが間違っています。または、この問題が他の何かの理由である場合は、私に知らせてください。

答えて

1

あなたは仮想ホストを作成した場合、その後、あなたの.htaccessファイルでこれらのリダイレクトを使用し、それ以外の場合は/etc/apache/sites-available/000-default.conf

<VirtualHost *:80> 
    ServerName domainname.com 
    DocumentRoot /var/www/html/docroot/dist/ 
    <Directory /var/www/html/docroot/dist/> 
     RewriteEngine on 
     RewriteCond %{REQUEST_FILENAME} -s [OR] 
     RewriteCond %{REQUEST_FILENAME} -l [OR] 
     RewriteCond %{REQUEST_FILENAME} -d 
     RewriteRule ^.*$ - [NC,L] 
     RewriteRule ^(.*) /index.html [NC,L] 
     </Directory> 
</VirtualHost> 

に次のように使用します。 これはあなたのサブールのページが見つかりません問題を解決するはずです。

+0

ありがとうございます、@ Omkar、しかし、これらのリダイレクトは私のためには機能しませんでした。私はラーベルバックエンドを持つ角のあるフロントエンドを持っています。すべてのURLがホームページにリダイレクトされるときにのみ、角度のあるルートが起動します –

0

私はlaravelの私web.phpファイルにもう一つのルートを追加しようとした:

Route::any('{any}',function(){ 
    return view('index'); 
})->where('any','.*'); 

私たちはhtaccessファイルを介してこれを達成することができます知っています。どんな助けもありがとう。 しかし、この解決策は今のところ私のために働いています。

関連する問題