LoginSignup
0
1

More than 3 years have passed since last update.

Ubuntu18.04(LTS)にadiaryを入れた時にハマったapache2の設定

Last updated at Posted at 2018-06-07

まずはじめに

CentOSとかでも出来ると思いますが、apache2.confをhttpd.confとか読み替えが必要です。
よく分からない場合は、検索ワードにCentOS (ご使用のバージョン)とかで探してもらった方が良いかと思います。
apacheのバージョンにも注意してください。古いバージョンからだいぶ変わっているようです。

Ubuntu18.04(LTS)にadiaryを入れた時にハマったapache2の設定

いろいろやったんで原因が色々ありますが、一つずつ切り分けてまとめます。

環境

Ubuntu: 18.04
adiary: 3.14a
Webサーバ: apache2
(nginxも対応されたようですが、本記事では扱いません1

gitが入ってない

当たり前と言えば当たり前ですが、apt installで入れる必要があります。
apt update & apt upgradeもお忘れなく。
gitを使わずzipをダウンロードする場合は不要です。

perlのバージョンが古い

apt upgradeしましょう。また、公式マニュアルにもありますがperlモジュールもインストールしてください。

Webに公開するファイルの場所を変えたい

つまりドキュメントルートを変更したい、という話なんですが初期状態だと/var/www以下を参照しています。
ドキュメントルートを決めているのは/etc/apache2にあるapache2.confやらsite-available/000-default.conf(場合によってはdefault-ssl.confも)です。
変更箇所は、ド直球にDocumentRootとかとか書いてる項目がありますが、これらを適切に設定します。

CGIが動かない

まずはgit cloneした.htaccessをコメントアウトしましょう。
調査が大変になります。

その後で参考リンクを参照しつつ、一つずつ順番にやっていきましょう。
一気に設定してapache2 restartとするのはおすすめしません。

a2enmodとは

色々なところを探すと、apache2.confやsites-available/default.confの話は書いてあっても、a2enmodについては書いてなかったです。
Ubuntu18でCGIを動かす場合、この辺りの設定が必要だったのですが、参考先のような形で明記してあったのはなかったので、こちらでも取り上げました。

さて、a2enmod cgiを実施すると/etc/apache2/mods-enabled/以下にcgi.*でシンボリックリンクが作成されているっぽいですね。
細かいのはwhich a2enmodで実行ファイル探してcgi辺りで追いかければわかりますが、私がperl5を読めないので多分そういう事やってるんじゃないかな、という感覚で見てます。

.htaccessの見直し

cgiが動くようになれば、.htaccessを見直します。
dot.htaccessとかリネームされている事もあるので、リネームをお忘れなく。
また、ls -laで参照しないと.htaccessが見当たらないので、コマンドにも注意。
普段からlコマンドでやっている人はlaです。

それでもうまくいかない場合

キャッシュが残っているので、F5で更新しても状態が変わっていない事が考えられます。
ブラウザ自体を再起動すると解消されたので、おかしいな?と思ったらブラウザ自体を再起動してみてください。タブやページだけではダメでした。

参考

adiaryの公式
ubuntuのapache2のドキュメントルート変更
apache2でcgiがダウンロードされる時のチェック項目一覧

読了後いいね!をお願いします。

どれだけの方に読んでもらっているか知りたいので、お手数をおかけしますがご協力いただけると嬉しいです。


  1. ちょっとやってみたんですが、うまくいかなかったので再チャレンジします。 

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1