個人用ツール

「レンタルサーバー毎の設定」の版間の差分

提供: baserCMS公式ガイド

移動: 案内, 検索
行174: 行174:
 
PHP 5.5.23 の場合 AddHandler x-httpd-php5523 .php
 
PHP 5.5.23 の場合 AddHandler x-httpd-php5523 .php
 
PHP 5.6.7 の場合 AddHandler x-httpd-php567 .php
 
PHP 5.6.7 の場合 AddHandler x-httpd-php567 .php
 +
</pre>
 +
 +
 +
== ラピッドサイトVPS ==
 +
 +
=== ControlPanelヘアクセス出来ない時の対応 ===
 +
 +
ラピッドサイトのVPS( http://www.rapidsite.jp/ )にて
 +
メインドメインのドキュメントルートへbaserCMSやWordpressなど
 +
リライトを使ったサイトを設置すると、ラピッドサイトの
 +
ControlPanel( http://ドメイン名/ControlPanel/ )へアクセスできなくなってしまいます。
 +
 +
http://www.rapidsite.jp/support/guide_migration/userguide/start_up/e_11326.html
 +
 +
==== 原因 ====
 +
 +
.htaccessへ記載されたリライトの内容の方が有効になってしまい、not foundになってしまうようです。
 +
 +
==== 対応方法 ====
 +
 +
1. ドキュメントルート直下に ControlPanel という名前の空のフォルダを設置
 +
2. ControlPanelフォルダ内に .htaccessファイルを作成、RewriteEngine Off を記述
 +
 +
これで、 http://ドメイン名/ControlPanel/ で元通りアクセスできるようになります。
 +
 +
※ 参考サイト
 +
 +
http://tetch1987.com/shittakabull/web/rapidsite-vps-install-wordpress-and-eccube#title8
 +
 +
<pre>
 +
6.ControlPanelへログインできるようにする
 +
 +
「http://ドメイン名/ControlPanel」にアクセスしてもWordpressのテーマが表示されてしまうので修正する
 +
 +
「http://ドメイン名/」に「ControlPanel」のフォルダをアップロード
 +
「http://ドメイン名/ControlPanel/」に「.htaccess」を作成し下記を記入。
 +
 +
RewriteEngine Off
 
</pre>
 
</pre>

2016年1月15日 (金) 14:48時点における版

baserCMSをインストールしたサーバーによっては、いくつかの作業を行なっておいたほうが、安定して運用できる場合があります。

ロリポップ!

WAFの無効化

ロリポップが持っている機能で、WAF(ウェブ・アプリケーション・ファイアーウォール)を無効化します。標準では有効になっていますが、baserCMSではルーティング等に影響があるようです。実際の作業の仕方はロリポップ!の公式マニュアル「WAFの設定・解除」をご覧ください。

mbstring.internal_encodingの設定

ページ管理、ブログ管理等で使用するWYSIWYGエディタが正常に表示されない場合、ロリポップの管理画面から「php.ini」の設定を行います。

設定画面に入ると、沢山の設定項目が出てきますが、その中で「mbstring.internal_encoding」の項目を、「未設定」から「UTF-8」に変更してください。この設定を行うことで、サーバーが内部処理につかう文字コードが、baserCMSが使用する文字コード「UTF-8」になり、不具合が解消されます。

具体的な作業方法は、公式サイト「PHPの設定」をご覧ください。

 

ヘテムル

WAFの一部除外

ブログ記事保存時にWAFが影響して保存できない場合は、一部除外で対応できます。(baserCMS 3.0.8にて確認)

参考:http://heteml.jp/support/manual/waf/#htaccess

.htaccess へ以下を追記してください。

# and/or,</>
SiteGuard_User_ExcludeSig sqlinj-22
# select...from...
SiteGuard_User_ExcludeSig sqlinj-1
# or...=, and...=
SiteGuard_User_ExcludeSig sqlinj-9
# or...--, and...--
SiteGuard_User_ExcludeSig sqlinj-10
# in
SiteGuard_User_ExcludeSig sqlinj-21
# group by ... having 1=1
SiteGuard_User_ExcludeSig sqlinj-103
# order by 
SiteGuard_User_ExcludeSig sqlinj-8
# '--
SiteGuard_User_ExcludeSig sqlinj-13

WAFの無効化

ヘテムルもロリポップと同様に、WAF(ウェブ・アプリケーション・ファイアーウォール)を無効化します。標準では有効になっていますが、baserCMSではルーティング等に影響があるようです。実際の作業の仕方はヘテムルの公式マニュアル「WAFの設定方法」をご覧ください。

mbstring.internal_encodingの設定

ページ管理、ブログ管理等で使用するWYSIWYGエディタが正常に表示されない場合、ヘテムルの管理画面から「php.ini」の設定を行います。

設定画面に入ると、沢山の設定項目が出てきますが、その中で「mbstring.internal_encoding」の項目を、「未設定」から「UTF-8」に変更してください。この設定を行うことで、サーバーが内部処理につかう文字コードが、baserCMSが使用する文字コード「UTF-8」になり、不具合が解消されます。

具体的な作業方法は、公式サイト「php.iniのご利用方法」をご覧ください。

 

さくらインターネット



テキスト寄贈:馬庭 吾一@株式会社ヒニアラタ

CPIサーバ

http://qiita.com/materializing/items/4aefd8f024bb1b2bb5af も参考になります。

スマートURL ON にならない

CPIサーバでRewriteを有効にするには .htaccess に Options +FollowSymLinks を追記する必要がある。 (Options +FollowSymLinks の記載がないと Internal server error)

参考: http://ameblo.jp/huangke/entry-10429548096.html

CPIサーバ(マネージドプラン、CHMシリーズ)などは記述する内容が変更になったようです。 FollowSymLinksの記述だとInternal server errorになりました。

参考: http://chmz.document.secure.jp/other/Tips-htaccess/

Options +FollowSymLinks
  ↓
Options +SymLinksIfOwnerMatch

追記

セキュリティ強化のためか、 (baserCMS設置フォルダ)/index.phpファイルのパーミッションが 書き込み許可( -wr-wr-wr- / chmod 666)になったまま、 .htaccessへ Options +SymLinksIfOwnerMatchを記述して RewriteEngine on にすると、Internal server error になるようでした。

FileZilla や SSHでログインして chmod 644 など、 ファイル所有者以外書き込みできないようにしておいてください。

×: -wr-wr-wr-   666
○: -wr-r--r--   644

POST時に文字化けする

CPIサーバは mbstring.encoding_translation = On のようで、ブログ記事保存時に文字化けする。 (何故か固定ページは化けないようですが…) 対応方法としては php.ini で各設定して対応します。

参考: http://wataame.sumomo.ne.jp/archives/5103

テキストエディタで「php.ini」としたファイルを作成し、<Ctrl+V>でペースト。
次に、以下の設定を変更します。

mbstring.internal_encoding = EUC-JP
を
mbstring.internal_encoding = utf-8
と変更

mbstring.encoding_translation = On
とあるので、これを
mbstring.encoding_translation = Off
に変更

作成したら、/usr/home/ユーザー名/ にFTPで設置。
階層的に、「html」と同列に来るようにします。この位置は、ブラウザからは参照できない位置となります。

.htaccess作成、設置

次に、CPIでPHPを使うには、.htaccess ファイルが必要なので作成します。
以下内容を記述。

AddHandler x-httpd-php559 .php          #←★php5.5.9を使う宣言
suPHP_ConfigPath /usr/home/ユーザー名   #←★php.iniのパスを記述

1行目の内容は、コントロールパネル、「サポート」タブ → オンラインヘルプ →「PHPについて」を参照の事。
2行目には、先ほどFTPアップロードした php.ini までのパスを記述します。

http://raining.bear-life.com/cpi/cpi%E3%82%B5%E3%83%BC%E3%83%90%E3%81%A7post%E3%81%AE%E5%80%A4%E3%81%8C%E6%96%87%E5%AD%97%E5%8C%96%E3%81%91%E3%81%99%E3%82%8B%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95

.htaccess でのSSL対応が有効にならない

CPIサーバでは RewriteCond %{HTTPS} なんとか が有効にならないため、ポート番号で判別する

RewriteCond %{SERVER_PORT} ^80$

参考: http://wataame.sumomo.ne.jp/archives/5121

サンプル

Options +FollowSymLinks
suPHP_ConfigPath /usr/home/XXXXXX/conf/

RewriteEngine on
RewriteBase /

#RewriteCond %{HTTPS} off
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{REQUEST_URI} ^(/inquiry|/admin).*$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

PHPバージョン切り替え (CPI オンラインヘルプより)

参考: http://chmz.document.secure.jp/tools/php/

PHP 5.4.39 の場合 AddHandler x-httpd-php5439 .php
PHP 5.5.23 の場合 AddHandler x-httpd-php5523 .php
PHP 5.6.7 の場合 AddHandler x-httpd-php567 .php

ラピッドサイトVPS

ControlPanelヘアクセス出来ない時の対応

ラピッドサイトのVPS( http://www.rapidsite.jp/ )にて メインドメインのドキュメントルートへbaserCMSやWordpressなど リライトを使ったサイトを設置すると、ラピッドサイトの ControlPanel( http://ドメイン名/ControlPanel/ )へアクセスできなくなってしまいます。

http://www.rapidsite.jp/support/guide_migration/userguide/start_up/e_11326.html

原因

.htaccessへ記載されたリライトの内容の方が有効になってしまい、not foundになってしまうようです。

対応方法

  1. ドキュメントルート直下に ControlPanel という名前の空のフォルダを設置
  2. ControlPanelフォルダ内に .htaccessファイルを作成、RewriteEngine Off を記述

これで、 http://ドメイン名/ControlPanel/ で元通りアクセスできるようになります。

※ 参考サイト

http://tetch1987.com/shittakabull/web/rapidsite-vps-install-wordpress-and-eccube#title8

6.ControlPanelへログインできるようにする

「http://ドメイン名/ControlPanel」にアクセスしてもWordpressのテーマが表示されてしまうので修正する

「http://ドメイン名/」に「ControlPanel」のフォルダをアップロード
「http://ドメイン名/ControlPanel/」に「.htaccess」を作成し下記を記入。

RewriteEngine Off