特定のディレクトリのlaravelのルーティングを無効にする方法を知りたいですか?
メインのウェブサイトをlaravelから実行したいと思っています(フレームワークに書き直しています)が、現在のフォーラムソフトウェアを保持したいと思います!問題は、laravelが「localhost/forums」を見ると、フォーラムのコントローラーまたはルートを探すことです。単に文字通りの/ forumsディレクトリに移動したいのですが。
この行をpublic/.htaccessに追加する必要がありました
RewriteCond %{REQUEST_URI} !^/foldername
この行の前(末尾のスラッシュをリダイレクトする)
RewriteRule ^(.*)/$ /$1 [L,R=301]
Laravel 4では、これらのソリューションはどれも私には機能しませんでした。最終的には、
RewriteRule ^(directory-name) - [L]
前
RewriteRule ^(.*)/$ /$1 [L,R=301]
public /.htaccessで
.htaccess
ファイルを除外する必要があります。すべてをindex.php
に送信するルールのすぐ上に、次を追加します。
RewriteCond %{REQUEST_URI} !^/forums
/forums
で始まるものはすべてLaravelに送信されません。
(もちろん、これはApacheを使用していることを前提としています。)
routes.php
ファイルによると、動作するはずです。
forum
URLをまったくキャッチしていませんindex.php
に書き換えられません。routes.php
(テストケースでこれを使用しました)
Route::get('{slug}', function($slug){
return $slug;
});
ファイル構造
|- app
|- public
|--- index.php // Laravel's one
|--- forum // directory for forum files
|------ index.php // Forum's one
....
この構造を使用すると、URLはLaravelのルーティングindex.phpファイルに書き換えられません。 forum
フォルダの名前を変更/削除すると、URLが書き換えられます。
それはあなたのために働きますか?
Laravel 5.7で/ billing urlを除外する必要があったので、この方法でうまくいきました:
Route::redirect('/billing', '/billing');
請求先: 請求フォルダの場所
私はnginxを使用しています、それは私のために働いています:
location /your_folder {
try_files $uri $uri/ /your_folder/index.php?$args;
}