2016-03-22 16 views
0

私はprestashopウェブサイトを継承しており、htaccessファイルは必要なすべてのリダイレクト用に設定されています。私はdevサブドメインへのアクセスを許可したいが、htaccessはメインサイトへのリダイレクトを続けている。私は限られた知識と信頼できる友人のGoogleでアクセスを許可しようとしましたが、編集したファイルをアップロードすると500エラーが発生します。htacess経由でdevサイトにアクセスできるようにする

オリジナルの書き換えがそう

<IfModule mod_rewrite.c> 
<IfModule mod_env.c> 
SetEnv HTTP_MOD_REWRITE On 
</IfModule> 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www.mysitename.com$ 
RewriteRule . - [E=REWRITEBASE:/] 
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] 
# Dispatcher 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteCond %{HTTP_HOST} ^www.mysitename.com$ 
RewriteRule ^.*$ - [NC,L] 
RewriteCond %{HTTP_HOST} ^www.mysitename.com$ 
RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L] 
#If rewrite mod isn't enabled 
ErrorDocument 404 /index.php?controller=404 

私は

するRewriteCondの%{HTTP_HOST}^www.mysitename.com $

後に最初に追加しようとしているようですこれらの行

RewriteCond %{HTTP_HOST} ^dev\.mysitename.com$ 
RewriteRule ^/(.*)   http://dev.mysitename.com/index.php/$1 [L, QSA] 

しかし、私はちょうど500のエラーを取得し、実験を中止し、サイトをオフラインにします。何か助けが大いにありがたいですが、書き直しについてもっと学びたいと思います。

+1

あなたは500エラーを取得するときに**常に**あなたのapacheのエラーログを確認する必要があります。なぜそれが壊れているのかを推測することはできません。それはあなたがそれを修正することができる問題を教えてくれます.. –

+0

それは壊れていない、私は追加しようとした行を削除した、私は別のスタックオーバーフローの質問から行を得て、 –

答えて

0

あなたの新しい行は、既存のRewriteCondとRewriteRuleのペアとなり、構文が破られています。線をRewriteCond %{HTTP_HOST} ^www.mysitename.com$行の上に移動してみてください。

0

はこのようにそれを持っている:

<IfModule mod_rewrite.c> 
<IfModule mod_env.c> 
SetEnv HTTP_MOD_REWRITE On 
</IfModule> 

RewriteEngine on 

RewriteCond %{HTTP_HOST} ^www\.mysitename\.com$ 
RewriteRule . - [E=REWRITEBASE:/] 

RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] 

# Dispatcher 
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 

RewriteCond %{HTTP_HOST} ^www\.mysitename\.com$ 
RewriteRule !(?:^|/)index\.php$ %{ENV:REWRITEBASE}index.php [NC,L] 
</IfModule> 

#If rewrite mod isn't enabled 
ErrorDocument 404 /index.php?controller=404 
関連する問題