特定のドキュメントルート /home/foo
があるとして
https://xxxxxx/bar
でlaravel設置したい
でも
/home/foo
/bar(public)
/app
/config
みたいなのを避けたい時用
ググるとapacheのconfいじったりするのは出てきますがレンサバ等では出来ないので
htaccessとプラスアルファで出来る方法の備忘録
まず設置(ディレクトリは省略)
/home/foo
/bar
/app
/config
/public
/home/bar
配下に以下のhtaccess設置
.htaccess
RewriteEngine on
RewriteBase /bar/
RewriteRule ^$ public/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ public/$1 [L]
これだけですが
route/web.php
に書くときにuriに/bar
が必要になります
例
route/web.php
//トップ
Route::match(['get', 'post'],'/bar', 'App\Http\Controllers\TopController@index')->name('top');
//なんか一覧
Route::get('/bar/list', 'App\Http\Controllers\Master\SearchController@list');