エックスサーバ等のサーバでSOY CMSを使用すると、公開側にアクセスした際に、

https://example.com/hoge

にアクセスしたはずなのに、

https://example.com/hoge?pathinfo=hoge

にリダイレクトすることがあります。


これはSOY CMSの開発初期にエックスサーバで使用できるように開発された機能なのですが、この仕様により機能しないプラグインがありますので、内部処理でリダイレクト無しでもPATH_INFOを補完できるようにしました。

PHP: $_SERVER - Manual


上記の機能はSOY CMS 3.14.0以降のバージョンから利用可能です。

https://saitodev.co/soycms/soycms/




SOY CMS 3.14.0以降をエックスサーバ等で使用する際、標準機能としてGETのパラメータとしてpathinfoの値の自動付与は残しておきます。

この機能を無効にするには、サイト毎の.htaccessの記述を下記のように変更します。

※サイトIDをsiteにして説明を続けます。


/ドキュメントルート/site/.htaccess

を開き、末尾の

RewriteRule ^(.*)$ index.php?pathinfo=$1&%{QUERY_STRING} [L]

#RewriteRule ^(.*)$ index.php?pathinfo=$1&%{QUERY_STRING} [L]
RewriteRule ^(.*)$ index.php/$1 [L]

に変更して保存します。

これでpathinfoの値の自動付与の機能は無効になります。