Ross Wan's World!

Python, Ajax, PHP and Linux.

Posts Tagged ‘Archlinux’

Archlinux: 以 non-root 运行 Lighttpd

Posted by Ross Wan 于 2008/11/07

假设 arch 为系统已经存在的非管理员账户(non-root)和组。

$ groups

可以查看用户 arch 是否已经加入 arch 组。

所用软件版本: PHP 5.2.6,Lighttpd 1.4.20。

安装 Lighttpd、PHP、Fastcgi

# pacman -S lighttpd php fcgi

配置 PHP

修改 /etc/php/php.ini,去掉以下行前面的注释:

cgi.fix_pathinfo=1
open_basedir = /home/:/tmp/:/usr/share/pear/

配置 Lighttpd

修改 /etc/lighttpd/lighttpd.conf 文件,注释或者添加以下行:

server.document-root    = "/home/arch/http/www/"

server.modules    = (
                    "mod_access",
                    "mod_fastcgi",
                    "mod_accesslog"
                    )

fastcgi.server    = ( ".php" =>
                           ( "localhost" =>
                             (
                               "socket" => "/tmp/php-fastcgi.socket",
                               "bin-path" => "/usr/bin/php-cgi"
                             )
                           )
                    )

server.username   = "arch"
server.groupname    = "arch"

注: server.document-root 是设置文档根目录,方便 arch 用户来管理。

更改相关日志的权限

# chown arch arch /var/log/lighttpd/*.log

修改 /etc/logrotate.d/lighttpd,在第二行添加 create 644 arch arch,示例:

/var/log/lighttpd/*log {
     create 644 arch arch
    postrotate
       /bin/kill -HUP `cat /var/run/lighttpd/lighttpd.pid 2>/dev/null` 2> /dev/null || true
    endscript
 }

运行 Lighttpd

在 /home/arch/http/www/ 下创建 index.php 文件:

<?php
phpinfo();
?>

启动 Lighttpd daemon:

# /etc/rc.d/lighttpd start

在浏览器里打开 http://localhost/。如果配置成功的话,会显示正确的 PHP 信息。

Advertisements

Posted in Archlinux, lighttpd, PHP | Tagged: , , , | Leave a Comment »

Archlinux:升级 Kernel 2.6.27 内核后禁用 Speaker

Posted by Ross Wan 于 2008/10/16

由于 Kernel 2.6.27内核新增了 snd-pcsp 模块,将 Speaker 模拟成为声卡,可能令部分声卡出现问题。而我这里出现的问题是不能禁用 Speaker,即使已经将 pcspkr 加入 rc.conf 的 blacklist。

最简单的解决方法就是将 snd-pcsp 同时加入 blacklist。

Posted in Archlinux | Tagged: , , , , | Leave a Comment »

Archlinux:Xfce4 下自动挂载 U 盘乱码的解决

Posted by Ross Wan 于 2008/09/17

对于在 Xfce4 下自动挂载的乱码问题,其实是 Xfce4 中 exo-mount 的一个 Bug,它会忽略挂载的 iocharset=utf8 参数。

目前解决的方法大概有两个,一是用 gnome-mount 来代替 exo-mount;二是为 exo-mount 打上一个 Path,重新编译安装。在 AUR 里已经有人制作了这样的一个包:

Posted in Archlinux, Xfce4 | Tagged: , , , | Leave a Comment »

好用的文档工具:reStructuredText

Posted by Ross Wan 于 2008/09/09

对于文档,最困难的就是排版,以及规范的格式。而 reStructuredText 就可以解决这个问题。它可以将纯文本重构建成格式规范的文档,输出成 html、xml、Latex 或者 PDF。妳只需要简单学习一下 reStructedText 的语法标记来编写那个纯文本即可。

reStructuredText 的学习曲线一点也不高,它跟 Python 的语法有点相近,主要通过缩进来定义元素。具体可以看看官网的文档:

中文文档可以参考《reStructuredText 简明教程》,由 Laurence 编写,Kardinal 翻译过来的:

编写好的源文档,需要使用一个 Python 工具 docutils 将其转化成 Html 或者 Latex 等等:(以在 Archlinux 系统下生成 Html 文件为例)

# pacman -Ss docutils

$ rst2html.py source.rst dest.html

这样就可以将 source.rst 纯文本文件转化成 HTML 格式的 dest.html 文档。

Posted in Archlinux, Python | Tagged: , , | Leave a Comment »