
現在、以下のようにOpenPNE(2.4RC1)を設置しています。
<さくらの専用サーバー/FreeBSD 6.1-RELESE>
/home/htdocs/OPENPNE
/home/htdocs/SNS ←public_htmlです
▼config.php---------------------------------------------
// Web上の絶対パス(URL)(最後にスラッシュを付けてください)
define('OPENPNE_URL', 'http://xx.xxx.xx.xx/SNS/');
▼SNS/config.inc.php-------------------------------------
define('OPENPNE_DIR', realpath('/home/htdocs/OPENPNE'));
require_once OPENPNE_DIR . '/config.php';
▼apacheの設定ファイル-----------------------------------
<VirtualHost *:80>
DocumentRoot "/home/htdocs/SNS/"
ServerName xx.xxx.xx.xx
DirectoryIndex index.html index.php
</VirtualHost>
この状態でセットアップモジュールの実行をしようと以下のアドレスにアクセスしたのですが、
http://xx.xxx.xx.xx/SNS/?m=setup
「Not Found」が表示され、
以下のアドレスでアクセスした時にセットアップ画面が表示されます。
http://xx.xxx.xx.xx/
どこかのパスが間違っているのでしょうか?
「/home/htdocs/SNS ←public_htmlです」という記述がイマイチわかりませんが(公開ディレクトリ、ということ?)バーチャルホストのDocumentRootに"/home/htdocs/SNS/"を指定している以上、正しい動作です。
DocumentRoot "/home/htdocs/SNS/"
を
DocumentRoot "/home/htdocs/"
に変更すると期待した動作をするのではないでしょうか
http://xx.xxx.xx.xx/SNS/?m=setup
でアクセスしたいのであれば
<VirtualHost *:80>
DocumentRoot "/home/htdocs/"
ServerName xx.xxx.xx.xx
DirectoryIndex index.html index.php
</VirtualHost>
になります。
/home/htdocs/OPENPNE にアクセスされるのがまずいのであれば、config.php を
define('OPENPNE_URL', 'http://xx.xxx.xx.xx/');
にして、現在出来ているように http://xx.xxx.xx.xx/ でアクセスすればよいと思います。