0

共有ホスティングを使用しています。codeigniter を使用して Web アプリケーションをビルドすると、新しい Web ディレクトリは次のようになります。

/home/projName/public_html/proj_v3/

このディレクトリの下に、index.php、.htaccess があります。上記のように、異なるプロジェクト バージョンを異なるディレクトリ (つまり、proj_v1、proj_v2、proj_v3) に分けました。Web アプリケーションは写真のアップロードを許可し、写真は/home/projName/public_html/proj_v3/application/uploadsに保存されます。proj_v2には、まだ使用されているため、現在アップロードされた最新の写真があります。プロジェクトのバージョンが異なるため、ディレクトリのアップロードを/home/projName/public_htmlなどの共通ディレクトリに配置したいと考えています。プロジェクトの新しいバージョンでは、アップロード フォルダーを新しいプロジェクト フォルダーに移動する必要がないようにします。これにより、ダウンタイムが発生する可能性があります。

現在、/home/projName/public_html/proj_v2の .htaccess ファイルは次のとおりです。

Options -indexes
DirectoryIndex index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1/ [L]

/home/projName/public_html/に別の .htaccessがあります:

Options All -Indexes
RewriteEngine On
Rewriterule ^(.*)\.*$  proj_v3/index.php/$1/
RewriteOptions MaxRedirects=3 

基本的に、/home/projName/public_html/ の 2 番目の.htaccessファイルを編集して、Web ディレクトリがdomain.com/uploads/image.pngの場合、 /home/projName/public_html/uploadsから画像を取得する方法を教えてください。 . 現在、2 番目の.htaccessファイルは、 domain.com/home/projName/public_html/proj_v3を指すように指示しています。

4

2 に答える 2

0
RewriteRule \.(jpe?g|gif|png|wmv|bmp)$ /uploads/$1

あなたのために働くかもしれません。必要に応じて他の形式を追加できます。

于 2012-11-13T13:28:50.947 に答える
0

やりたいことは、実際のファイルとフォルダーへのパスが存在することを許可し、他のすべてを CodeIgniter にリダイレクトすることです。2 番目の .htaccess ファイルでこれを使用してこれを実現できます。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

mod の書き換えに関する CodeIgniter Web サイトのこの記事を読む価値があります。

私は実際に前に同様の答えを出しました: OSX の Users/<username>/Sites ディレクトリの mod_rewrite

于 2012-11-13T13:30:50.983 に答える