« 12月 2012 2月 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

Profile

Mobile

  • .htaccessのdeny from all で apacheのTestPageが表示されてしまう
  • 2010.02.07
  • 携帯サイト用にPCからのアクセスを拒否する.htaccessを作成する際、apacheのTestPageが表示されてしまい、対応に時間がかかったため、備忘録として記述します。


    【.htaccessの内容】

    order deny,allow
    deny from all

    #アクセスを許可するIPアドレスを一行ずつ記入する
    allow from 210.153.84.0/24
    allow from 210.136.161.0/24

    #PC用のファイルを指定
    ErrorDocument 403 /error_m/pc.html
    #error_mディレクトリには.htaccessを設置しdeny from allを記述


    これで許可しているIPアドレス以外は/error_m/pc.htmlを表示するのですが、トップページを/(スラッシュ)で終了したURLにアクセスするとapacheのテストページが表示されていました。
    http://www.hoge.com/ → NG(テストページ表示)
    http://www.hoge.com/index.html → OK
    http://www.hoge.com/index.htm → OK
    http://www.hoge.com/index.php → OK


    いろいろ調べたところ、/etc/httpd/conf.d/welcome.confにある以下の内容が影響してるよう。

    <LocationMatch “^/+$”>
        Options -Indexes
        ErrorDocument 403 /error/noindex.html
    </LocationMatch>


    これを全部コメントアウトします。
    いらないらしいけど、一応バックアップは取っておいたほうが安心 ;-)


    これで、httpd再起動後、正常に動作するようになりました。
    service httpd restart

【この記事のタグ】
, , ,
  • FTPソフトでドットファイルを表示する
  • 2010.01.22
  • 使えるネットのVPSサーバを使ってるとFTPソフトで接続した際、.htaccessが表示されないので修正してみました。


    まずは、SSH接続して/etc/proftpd.confファイルを編集する。


    vi proftpd.conf


    <Global>ディレクティブ内に「ListOptions “-a”」を追加


    <Global> 
    DefaultRoot   ~      psacln 
    AllowOverwrite      on 
    ListOptions         ”-a”
    </Global>


    そして再起動
    service xinetd restart


    これで無事、.htaccessファイルが表示されるようになりました。 :razz:

【この記事のタグ】
  • 空メールでPHPを起動する
  • 2010.01.21
  • 空メール処理を作成したので、メモします。


    1.空メール送信用メールアドレス作成


    2.受信メールボックスにメールが来たらPHPを起動するため、.qmailを編集。
    使えるネットの場合、/var/qmail/mailnames/自分のドメイン/追加したメールアカウント/に.qmailがあるので、SSHで接続し、該当ディレクトリに移動してmoreコマンドなどで内容を表示してみると


    [root@*********]# more .qmail
    | true
    | /usr/bin/deliverquota ./Maildir


    となっているので、1行目に以下の行を追加。


    | /usr/bin/php -d safe_mode=off /var/www/vhosts/自分のドメイン/private/mail.php 
    ※この例では、privateディレクトリのmail.phpを起動する
    (セキュリティの為、ウェブでアクセス出来ないディレクトリに保存)
    privateディレクトリのパーミッションは705


    ※PHPプログラムの起動のみで、メールは受信したくない場合は、最初から入っている記述をコメントアウト。
    #| true
    #| /usr/bin/deliverquota ./Maildir


    3.mail.phpに処理を記述

    ただし、PHPプログラムの中で、絶対パスで読み込むと上手くいかないっぽいので要注意!

    【×】→ require_once( “/var/www/vhosts/自分のドメイン/httpdocs/hogehotge/hogehoge.php” );


    と、このような処理になるのだが、動かなくて大分苦労しました。
    結局privateディレクトリのパーミッションが原因だと分かり無事解決 :emoji92:

【この記事のタグ】
, ,
Page Top