Web

設定

Virtual host内でSSLを使う

1個しか使えない。 http://httpd.apache.org/docs/2.0/ja/vhosts/name-based.html

同一サーバで、virtual host別のSSLを付与して同じポートで使うことは出来ないらしい。そうしたければポートを変えて使うしかないとの事。

VirtualHost?内でUserdirを有効・無効にする

参考URL

  1. まずa2enmodでuserdirを有効にする。
  2. /etc/apache2/mods-available/userdir.conf内をコメントアウトする
    #<IfModule mod_userdir.c>
    #        UserDir public_html
    #        UserDir disabled root
    #
    #        <Directory /home/*/public_html>
    #                AllowOverride FileInfo AuthConfig Limit
    #                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    #        </Directory>
    #</IfModule>
  3. その後/etc/apache2/sites-enabled/対象VirtualHost?ファイルに以下を追加する
    <IfModule mod_userdir.c>
           UserDir public_html
           UserDir disabled root
           UserDir enabled aya
    </IfModule>
    必要であればAllowOverrideやOptionsも追加する
  4. /etc/init.d/apache2 reloadをして反映させる

PHPの設定をApache側で行う

httpd.confもしくは.htaccessファイルで拡張モジュールをロードするにはphp_valueまたはphp_admin_valueで行う

<VirtualHost 192.168.1.1>
 php_admin_value include_path "/home/sites/include:.";
 php_admin_flag register_globals off
 php_admin_flag short_open_tag off
 php_value extension 'mysql.so'
</VirtualHost>

有効、無効の設定はphp_flag もしくは php_admin_flagを使う
順番:httpd.conf > .htaccess
特別な理由がないかぎりphp.iniからロードしたほうがよい

smartyを入れる

  1. apt-get install smartyでインストールしたかったが、依存関係で、php4を入れようとするので、とりあえずダウンロードしてみる。
  2. その後 入れようと思ったら怒られた
    hoge@com:~$ sudo dpkg -i smarty_2.6.14-1_all.deb
    (Reading database ... 23064 files and directories currently installed.)
    Preparing to replace smarty 2.6.14-1 (using smarty_2.6.14-1_all.deb) ...
    Unpacking replacement smarty ...
    dpkg: dependency problems prevent configuration of smarty:
    smarty depends on php4 | php4-cli | php4-cgi | php5 | php5-cgi | php5-cli;  
    however:
     Package php4 is not installed.
     Package php4-cli is not installed.
     Package php4-cgi is not installed.
     Package php5 is not installed.
     Package php5-cgi is not installed.
     Package php5-cli is not installed.
    dpkg: error processing smarty (--install):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     smarty
    このような場合は
     Package php5 is not installed.
     Package php5-cgi is not installed.
     Package php5-cli is not installed.
    上記のパッケージだけ入れて
    hoge@com:~$ sudo dpkg -i smarty_2.6.14-1_all.deb
    とするとすんなり入る
  3. /etc/php5/apache2/php.iniを編集、追加
    ; UNIX: "/path1:/path2"
    ;include_path = ".:/usr/share/php"
    ↓
    ; UNIX: "/path1:/path2"
    include_path = ".:/usr/share/php:/usr/share/php/smarty/libs/"
  4. /var/www配下に
    1. templates
    2. templates_c
    3. configs
    4. cache のディレクトリを作る。permissionやownerの確認をする

参考URL

Basic認証

  1. /etc/apache2/sites-enabledで有効にしているファイルに追記
  2. sudo emacs default
    <Directory /home/popowa/public_html/pdadmin>
     AuthUserfile /var/www-data/.htpasswd
     AuthType Basic
     AuthGroupFile /dev/null
     AuthName "Authorized Users Only"
      <LIMIT POST GET PUT>
     require user hogeuser
      </LIMIT>
    </Directory>
    という感じに追記して、
  3. /etc/init.d/apache2 reloadをする

DirectoryIndex? ディレクティブ

http://httpd.apache.org/docs/2.0/ja/mod/mod_dir.html

/etc/apache2/mods-available/dir.confに追加する

<IfModule mod_dir.c>
  DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.phtml
</IfModule>

Last-modified: 2012-03-12 (月) 17:05:50 (166d)