
Ubuntu日本語フォーラム

ログインしていません。
表題の件の事をしてしまいました@@;
LAMP構成で、MySQLはそのままにして、apacheとphpをまっさらな状態から再インストールしたいなーと思い、
sudo apt-get autoremove apache2
等実行し、ディレクトリもない方がいいのかなーーーと思い、
sudo rm -R apache2
とかやって、再度、
sudo apt-get -y install apache2
とインストール始めたんですが、
画面見ると、it worksと表示されない…
はて、
sudo a2enmod rewrite
みたいなことをちょっとやってみると、そんなモジュールありません!と叱られましたO_o
どーもディレクトリを削除したことがいけなかったようですが、
どーすればいいのでしょうか??@@;
どなたか、今後のアプローチ方法、ご伝授よろしくお願い致しますm(__)m
オフライン
apt-get autoremove apache2 という使い方は間違い
特定のパッケージ (今回の場合は apache2) だけを削除するつもりなら apt-get remove apache2 になります
apt-get autoremove apache2 でもほぼ希望通りの動作はするみたいだけど...
復旧するには以下の2つのコマンドを実行すればいいと思います
sudo apt-get --purge remove apache2 sudo apt-get install apache2
以下余談
apache2 をインストールした環境で /etc/apache2 を削除してから apt-get --reinstall install apache2 としてみたのだけど、/etc/apache2 は作成されないのね orz.
オフライン
うわーryさん、いつもありがとうございます!
で、
早速やってみたんですが、
ダメでした><
再インストールしかダメなのか…@@;
えーと、
背景を勝手に説明します!
実は、
Oracle Instant Clientをインストールしようとして、
いろいろジャパニーズWebサイトを検索していると、
apacheは、DSOが有効でないとダメだー!と、
ほとんどのサイトで書いてありまして、
ほとんどが、
apacheやらphpをソースからmake install しているようなのでした。
そこで、
パッケージでインストールされているApacheとphp5を
一旦削除して、
ソースから再度Apacheをインストールして、
Oracle Instant Clientをインストールして、
php5をインストールしたのですが、
なかなか上手くいかず、
出来たと思ってphpinfoみてみると、
何回やっても、
phpinfoはoci8関数をまったく表示してくれません…
これで数日間詰まっていたのですが、
apache2 -Vで、Ubuntuのdefault設定をよーく見て見ると、
あれれれれーーーー
これ、もしかして、defaultでDSO有効になってない???
…
と先日、Ubuntuが大変気のきいた設定をしていることに、
ハタと気付き、
他のLAMP設定してあるPCで、
パッケージは、そのままにして、
Oracle Instant Clientをインストールする方針に替えた所
上手くいったのでした><
長かった…
そこで改めて、
さんざんいじっくった私のメインマシンを直して、
同じ設定をしよーとしたところ、
最初の質問状態となってしまったのでした…
つまり、素人考えでぐちゃぐちゃにいじって、
ファイルも壊れているのかもしれず、
ryさんの方法では無理なのかもしれません><
Black Sundayな一日でした…
いつも親切にレスありがとうございますm(__)m
オフライン
#1のmichi_gogoさんへ
今回消してしまったのが /etc/apache2 なら、
sudo apt-get purge apache2.2-common sudo apt-get install apache2
で直ります。(検証済み)
#1のmichi_gogoさんへ
付け足しです。
何の"apache2"を消したのか覚えていないなら、「全部やり直し」が無難でしょう
$ sudo apt-get purge apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common $ sudo apt-get install apache2
#4 のSTGSAGWAN さんのコメントで #2 の間違いに気づきました
apt-get remove だと依存関係を考慮しません
/etc/apache2 のディレクトリを作成するパッケージは apache2.2-common なので、apt-get を使うならこのパッケージを直接指定する必要がありました
apt-get ではなく、aptitude や synaptic であれば依存関係を考慮するので、上位に位置する apache2 だけを指定しても apache2 → apache2-common → apache2.2-common のように、本来指定すべき apache2.2-common を含めた動作が可能です
# ちょっと急いでいるので乱文失礼
オフライン
STGSAGWANさん、ryさん、どうもです!
なんか、it worksになりました!
しかし、/var/www/下に配置したphpinfo.phpをブラウザ上で指定しても、
Not Found
The requested URL /phpinfo.php was not found on this server.
となります…
ソースからインストールしたapacheを削除してないからかな?O_o
ということで、私のapacheの、見よう見まねでやったインストール方法を、
何を私はやってしまったのか!が分かる様に、
参考までに書きます…
-----------------------------------------------------------------------
ここから、私のやったソースからのapacheのインストール方法!
-----------------------------------------------------------------------
①ファイルを取得するディレクトリへ移動する
cd /usr/local/src
②ファイルを取得する
sudo wget http://archive.apache.org/dist/httpd/httpd-2.2.8.tar.gz
※上の例はapache2.2.8の取得
③解凍します
sudo gzip -d httpd-2.2.8.tar.gz
※元のファイルも無くなります。
④アーカイブを生成する。
sudo tar xvf httpd-2.2.8.tar
※httpd-2.2.8というディレクトリができて、
その内にインストール用ファイルが展開されます。
⑤出来たアーカイブに移動します。
cd httpd-2.2.8
⑥DSOを有効にしたapache2をインストールする下準備をします。
sudo ./configure --enable-so
※この時、普通にこれを実行するとエラーになります。
Ubuntuには、gccはインストールされていますが、
g++はインストールされておらず、
この2つが無いと、configureができないからだそうです。
よって次のコマンドで、g++をインストールしておきます。
sudo apt-get install g++
ちなみに、次のコマンドで、
Debian系で使う基本的な開発ツールがインストールできるようです。
Ubuntuでも有効だそうです。
apt-get install build-essential
※これは、以下のエラー対策になります。
configure: error: C compiler cannot create executables
⑦makeファイルを生成します。
sudo make
※予め、makeをインストールしておく必要があります。
sudo apt-get install make
⑧apache2のインストールを実行します。
sudo make install
⑨起動時にapacheが自動起動するように設定します。
まず、次の行を入力します。
sudo cp /usr/local/apache2/bin/apachectl /etc/init.d/apachectl
sudo chmod +x /etc/init.d/apachectl
⑩コピー先の/etc/init.d/apachectlの冒頭箇所を、
記述例になる様に編集し、保存します。
sudo vi /etc/init.d/apachectl
【記述例】
#!/bin/sh
#
# chkconfig: - 85 15
# description: Apache is a web server.
⑪上記をコピーをstart-up managerに登録します。
sudo /usr/sbin/update-rc.d apachectl defaults
⑫dedicate Apache system user accountを生成します。
これは、apacheのインストールをもっと安全にするらしいです。
sudo adduser --system apache
⑬⑫で設定したユーザーアカウントを、
/usr/local/apache2/conf/httpd.confの記述例にある場所を検索し、
編集、保存します。
sudo vi /usr/local/apache2/conf/httpd.conf
【記述例】
User daemon
Group daemon
↓
User apache
Group nogroup
⑭以上で終了です。
次のようにコマンドを入力してチェックします。
sudo /usr/local/apache2/bin/apachectl start
ps -aux | grep httpd
ここにapacheの文字が表示されていて、
それが全て動いていればインストール成功です。
------------------------------------------------------------------------
ここまで、私のやったソースからのapacheのインストール方法!
------------------------------------------------------------------------
自動起動の設定を戻さないとダメなのかな@@;
がんばってみます~~~
オフライン