1つのウェブホスティングアカウントで複数のドメインをサポートするソリューションを探しています。これはhtaccessで行う必要があります。つまり、domainxを呼び出し、htaccessを使用して、サーバーがドメイン名に対応するサブフォルダーにWebルートを「偽造」するという考え方です。私はすでに「解決策」を持っていますが、これは完全には機能しません。
私が抱えている問題:
- (CodeIginiterのbase_url()を使用して)PHPを介してリダイレクトすると、次のようになります。たとえば、「http://www.domein1.nl/domein1.nl/」。
- ローカルサーバーでは動作しません。
だから、私が現在使用しているhtaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} domein1.nl$ [NC]
RewriteCond %{REQUEST_URI} !^/domein1.nl/.*$
RewriteRule ^(.*)$ /domein1.nl/$1 [L]
RewriteCond %{HTTP_HOST} domein2.nl$ [NC]
RewriteCond %{REQUEST_URI} !^/domein2.nl/.*$
RewriteRule ^(.*)$ /domein2.nl/$1 [L]
</IfModule>
CodeIgniter PHP-base_url()のコード。サーバー変数「SCRIPT_NAME」は、問題1としてマークされた2番目のドメインフォルダーを追加します。これは、ルートフォルダーが正しく偽造されている場合は発生しません。しかし、それは実際に可能ですか?
if (isset($_SERVER['HTTP_HOST']))
{
$base_url = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off' ? 'https' : 'http';
$base_url .= '://'. $_SERVER['HTTP_HOST'];
$base_url .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']);
}
最後になりましたが、hostsファイルを介してリダイレクトしている間は、ローカルサーバーで機能していません。
192.168.2.9 local.domein1.nl
192.168.2.9 local.domein2.nl
すっごく..これらの問題を解決するにはどうすればよいですか?前もって感謝します!
編集:私のローカルサーバーの問題が修正されました..咳「sudoa2enmodrewrite」がトリックを行いました。
Edit2:ストームドレインはフォルダー構造について始まったので、ここに複数のCIアプリケーションを明確にするための私のものがあります。
メインの.htaccessの場所/webroot
/public_html/.htaccess
domain1:
/application/domain1/ (domain1 application path)
/application/system/ (shared system path)
/public_html/domain1/index.php (CI domain1 index)
domain2:
/application/domain2/ (domain2 application path)
/application/system/ (shared system path)
/public_html/domain2/index.php (CI domain2 index)