はじめに WEBサーバーとして利用していたさくらVPSのサーバーのOSをクリーンインストールしてCentOS7を入れることに。 さくさくっとサービスを立てていき、いざ外部から接続テストをしてみると繋がらない。 今まで何度もさくらVPSでWEBサーバーは立てているのに、こんなことは初めて!と調査やら試行錯誤で半日くらい使ってしまったお話。。。 TL;DR 2019年6月27日からパケットフィルタが提供開始されていた。 OSインストール時にデフォルトSSH(22)だけ許可で有効になる模様。 調査 サービスがたっているか確認 $ ps aux | grep httpd root 19113 0.0 0.7 170676 7616 ? Ss 16:28 0:00 /usr/local/apache2/v2.4.39/bin/httpd -k start ふむ。ある。 ポートが空いているか確認 $
RewriteRuleの設定をしくってるのかエラーになるでござる! ここはいっちょログでも出しますかと思ったら以下エラー AH00526: Syntax error on line 268 of /usr/local/etc/apache2/2.4/httpd.conf: Invalid command 'RewriteLog', perhaps misspelled or defined by a module not included in the server configuration おめーのRewriteLogなんて知らねえから!m9(^Д^)プギャー ファッ!?なんでや!ワイの設定は間違えてないはず! RewriteLog "/tmp/rewrite.log" RewriteLogLevel 8 Apacheリファレンス読むと、上記のやり方はApache2.2までなんです
mod_perlについて mod_perlはPerlスクリプトを高速化する仕組みで、「ModPerl::PerlRun」モードではインタプリタ(Perlの実行エンジン的なもの)をメモリに保持し、「ModPerl::Registry」モードではインタプリタに加えてコード全体もメモリに保持するのでグローバル変数なんかは次回呼び出し時にも残ります。 実行速度よりもオーバーヘッドが減る感じですが、比較として以下の適当なスクリプトを実行してみます。 #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<html><body><pre>"; print "test"; print "</pre></body></html>"; テストは「Apache Bench」を使います。 ab -c 10 -n 10000 http://loca
Ubuntu(ウブントゥ)は、Debian をベースに開発されている Linuxディストリビューションのひとつです。Ubuntu といえばデスクトップ版のイメージがありますが、サーバー版の Ubuntu Server も Webサイト向けの Linuxディストリビューションとして圧倒的なシェアを誇っています。また Ubuntu Server は、利用可能なソフトウェアパッケージが多く比較的バージョンが新しいのが魅力です。そこで今回は、Ubuntu Server 24.04 で LAMP環境(Apache2.4/MySQL8.0/PHP8.3)をインストールする手順をまとめてみました。 マシン構成 Ubuntu Server のインストールドキュメントで推奨されているシステム要件は次の通りです。 RAM:2GB以上 ディスク:5GB以上 今回は UTM の仮想マシンに Ubuntu Serv
問題 Apache2.2から2.4への移転で、元の .htaccess のIP制限やベーシック認証を持ってきたのですが、なんだか思ったように設定しづらいです。 答え 古い .htaccess だと、Order、Allow、Deny、Satisfy などを使って書かれていると思う。 Order Deny,Allow Deny from all Allow from xxx.xxx.xxx AuthType Basic AuthUserFile /var/www/example.com/.htpasswd AuthName "auth" require valid-user Satisfy any Apache2.4 でこれらがまだ使えるのは、互換性のために用意された mod_access_compat モジュールのおかげ。 # apache2ctl -M Loaded Modules: co
で、すぐに分かりましたが、setenforce 0 で解決する話ではなく、setenforce 1 のまま解決します。 【すぐに解決しなかった要因】 ・/var/log/audit/audit.log に何も出力されない。 ・ファイルを添付しない POST のため、upload_tmp_dir は無関係だと思っていた。(PHP マニュアルでは、ファイルアップロード時にファイル保存に用いるテンポラリディレクトリ。 という説明。) ・display_errors = On、display_startup_errors = On のときのみ POST データ消失が再現。 ・同じ内容を POST して、再現しないこともあった。(一度再現しなくなったら、しばらく再現せず、たまに再現。← この件は、最終的に謎のまま。) PHP8 では再現しませんでした。 また、PHP7 の場合は、PHP 7.4.6、
$ /usr/sbin/apachectl -v Server version: Apache/2.4.41 (Unix) Server built: Nov 9 2019 07:53:54 mod_proxy と mod_proxy_http を有効化 http サイトにリバースプロキシするために必要なモジュールを有効化する。 a2enmod コマンドで Apache モジュールを有効にする。 a2enmod コマンドに proxy_http を指定すると mod_proxy_http と依存関係にある mod_proxy が有効になる。 $ sudo a2enmod proxy_http Considering dependency proxy for proxy_http: Enabling module proxy. Enabling module proxy_http. To a
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く