ウェブ、ショウジン

Ubuntu ServerにおけるApacheの設定ファイル

2009-6-3
Category
Linux Server

apacheの設定ファイルは、ずっとhttpd.confだとばかり思っていた。たとえば

MacPortsで作った環境なら
/opt/local/apache2/conf/httpd.conf

xampp環境なら
/applications/xampp/xamppfiles/etc/httpd.conf

といったように。(実際、これらのファイルを編集して色々と設定の変更を行っていた)

でも、VMware FusionにインストールしたUbuntu Serverの場合は違った。httpd.conf はあるにはあるけれど、空だし。(場所は/etc/apache2/httpd.conf)

今勉強しているCodeIgniterのソースをこのUbuntu Serverにもっていくと、どうにもうまくmod_rewriteが働かなくて、肝心のページが404で見つからない状態。MacPortsやxampp環境で対応していた処理(記述)を buntu上でもしたけれど(httpd.conf への書き込み)結果は変わらず。mod_rewriteが働いていない模様。

たまたま見つけたblogエントリで、初めて見るものがあったのでこれを試したら見事成功した。ようは、単純に「設定を変更するための設定ファイルを間違えていた」ということだった。

他のLinuxディストリビューションは知らないけれど、Ubuntuにおいては、apacheの設定ファイルは
/etc/apache2/sites-available/default

ということだった。(Ubuntu の Apache で、PHP を有効にする方法

$ sudo vim /etc/apache2/sites-available/default

で、このファイルを開いて以下の部分の「AllowOverride」を「All」にし、apache を再起動。

<directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All # この部分がデフォでは None だった
    Order allow,deny
    allow from all
</directory>

前述の参照blogエントリにあった+ExecCGIとか、DirectoryIndex index.phpとかの部分は、別に関係ないようだったので記述しなかった。(AllowOverride の部分だけしか変更しなかった)

これでUbuntu Serverでmod_rewriteを有効にすると、CodeIgniterのディレクトリに配置した .htaccess(後述)の設定が有効になって

http://IPアドレス/CodeIgniter/コントローラ名

に、きちんとアクセスできるようになった。

/var/www/CodeIgniter/.htaccess の内容

RewriteEngine on
RewriteCond $1 !^(index\.php|css|user_guide|.+\.gif$|.+\.jpg$|.+\.png$|.+\.js$)
RewriteRule ^(.*)$ /CodeIgniter/index.php/$1 [L]

と思ったら、やっぱり駄目だった。
チュートリアルで作成したページ遷移がうまく働かない。
(あとでちゃんとエクスポートのやり方を読みながらやってみよう)

07/06/2009 追記:解決
チュートリアルで作成したコンタクトフォームの画面遷移を正常な状態にすることが出来た。なんてことはなくて、CodeIgniter の設定ファイルでの base_url の指定のせいだった。local における xampp 環境では「localhost」で良かったんだけど、仮想マシン上で実行する場合にはここを適宜変更しておかないと(IPアドレス直指定) local のほうへ繋ぎにいってしまう。なので、ここ設定部分を以下のように変更する。

/var/www/CodeIgniter/system/application/config/cofig.php

$config['base_url'] = "http://localhost/CodeIgniter/";

$config['base_url'] = "http://Ubuntu Server の IPアドレス/CodeIgniter/";

Ubuntu ServerのIPアドレス部分は、Ubuntu上でコマンド「ifconfig」を打つことで知ることが出来る。

Ubuntu 10.04 完全ガイド
Ubuntu 10.04 完全ガイド
posted with amazlet at 11.02.03
インフォレスト
売り上げランキング: 21713

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿