0

ここでいくつかの解決策を見ましたが、役に立ちませんでした。私の index.php はここにあります: http://localhost/basic-2/web/index.php.

を入力するhttp://localhost/basic-2と、ブラウザーはパスにリダイレクトされhttp://localhost/basic-2/web/index.phpますが、ブラウザーでは URL がhttp://localhost/basic-2/index.phpアドレスになります。webそのため、URL からサブフォルダーを削除 (または非表示) したいと思います。

私はここで多くの解決策を見てきました...しかし何もありません:(、今私はこれを持っています:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/web/$1 -f [NC]
RewriteRule ^([^/]+)$ /web/$1 [P,L,QSA]

ただし、これはフォルダーとファイルのリストのみであり、サブフォルダーへのリダイレクトは行いません。

webこれはリダイレクトできますが、URL からフォルダーを隠しません。

RewriteEngine On
RewriteRule ^$ web [L]

Edit1 別のルールを見つけました:

RewriteEngine On
RewriteRule ^$ web/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ web/$1

これでリダイレクトできます!webしかし、このルールはまだフォルダーを非表示 (または削除) しません...

4

1 に答える 1

0

次のようなものを試してください:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /basic-2/

RewriteCond %{DOCUMENT_ROOT}/basic-2/web/$1 -f [NC]
RewriteRule ^(.*)$ web/$1 [P,L,QSA]

RewriteCond %{THE_REQUEST} \ /basic-2/web/([^\?\ ]*)
RewriteRule ^ /basic-2/%1 [L,R=301]
于 2013-10-02T22:50:06.533 に答える