Apache

来自Ubuntu中文
跳到导航跳到搜索

基础

如果你是安装到本机上测试的话,最好确保hosts的内容为这样

username@ubuntu:~$ cat /etc/hosts
127.0.0.1       localhost

安装

首先,如果您花费一点时间熟悉一下常用的命令 会非常有帮助!

安装LAMP并没有那么神秘。 一步一步来。这比windows下面那麻烦的配置 简单多了!

安装LAMP

在新立得软件包管理器中选择  编辑--使用任务分组标记软件包

在打开的窗口中 勾选 LAMP SERVER 然后确定。

在主窗口中 点击绿色的对号 应用 按钮

好了 。接下来就是等待...等待新立得 自动下载安装完。

中间会有一次提示输入mysql的root用户的密码

sudo apt-get install apache2 mysql-server php5 php5-mysql #终端命令

打开 http://localhost

Apache默认页面

安装phpmyadmin

方案一:终端中运行命令 (不推荐)

sudo apt-get install phpmyadmin

方案二:

强烈建议不要从源里安装
在phpmyadmin网站上下载软件包,解压缩到本地目录/var/www/phpmyadmin
tips:如果你请直接解压到/var/www/phpmyadmin,如果不存在phpmyadmin,请自行创建
在终端下执行

sudo cp /var/www/phpmyadmin/config.sample.inc.php /var/www/phpmyadmin/config.inc.php
sudo gedit /var/www/phpmyadmin/config.inc.php

找到“blowfish_secret”在后面填上任意字母

$cfg['Servers'][$i]['auth_type']='cookie';
$cfg['Servers'][$i]['host']='localhost';
$cfg['Servers'][$i]['connect_type']='tcp';
$cfg['Servers'][$i]['compress']='false';
$cfg['Servers'][$i]['extension']='mysql';


保存,退出


安装php5-mcrypt

sudo apt-get install php5-mcrypt

编辑php配置文件

sudo gedit /etc/php5/apache2/php.ini 

在extension下面加上

extension=php5-mcrypt.so 


保存,重启apache2
在浏览器里输入http://localhost/phpmyadmin

配置

1>apache 的配置文件路径 /etc/apache2/apache2.conf

2>php.ini 路径 /etc/php5/apache2/php.ini

3>mysql配置文件 路径 /etc/mysql/my.cnf

4>phpmyadmin配置文件路径 /etc/phpmyadmin/apache.conf

5>网站根目录 /var/www

配置apache

终端中使用命令

sudo gedit /etc/apache2/apache2.conf

在配置文件最后面加入下面几行:

添加文件类型支持

AddType application/x-httpd-php .php .htm .html


默认字符集 根据自己需要

AddDefaultCharset UTF-8

服务器地址

ServerName 127.0.0.1

添加首页文件 三个的顺序可以换 前面的访问优先 (当然你也可以加别的 比如default.php)

<IfModule dir_module>
DirectoryIndex index.htm index.html index.php
</IfModule>

修改apache的根目录DocumentRoot:

sudo vim /etc/apache2/sites-enabled/000-default 

修改DocumentRoot /var/www

重启Apache2服务即可。


sudo vim /etc/apache2/ports.conf #修改端口号,修改 Listen 80 


sudo a2enmod rewrite #开启apache 的rewrite功能

配置PHP5

这个没什么好说的 根据个人自己需要

下面是默认时区

;date.timezone=

去掉前面的分号 后面加个PRC 。表示中华人民共和国(就是GMT+8时区)

date.timezone= PRC

配置mysql

sudo gedit /etc/mysql/my.cnf

这里有一个地方要注意

默认:是只允许本地访问数据库的

bind-address 127.0.0.1

解除限制只能本地访问mysql,如果需要其他机器访问,应使用如下语句,把这“bind-address 127.0.0.1”句话用#注释掉

#bind-address 127.0.0.1

配置phpmyadmin

phpmyadmin 默认并不是安装在 /var/www下面的而是在 /usr/share/phpmyadmin

你可以把phpmyadmin复制过去 或者 网上有人说你可以创建一个链接 然后把链接复制过去(没有试过)

然后 终端中运行命令

sudo gedit /etc/phpmyadmin/apache.conf

然后把下面两句的路径 改为/var/www/phpmyadmin(因为我已经配置好环境,所以忘记了phpmyadmin中默认配置怎么写的。。反正就是在第三行和第四行的两句.如果我没记错的话 应该是下面这样)

Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>

改为:

Alias /phpmyadmin /var/www/phpmyadmin
<Directory /var/www/phpmyadmin>

附:常用命令

1.重启apache

sudo /etc/init.d/apache2 restart

2.重启mysql

sudo /etc/init.d/mysql restart

测试 phpinfo();

创建、测试phpinfo:

sudo vi /var/www/info.php
<?php phpinfo(); ?>

打开 http://localhost/info.php

Apache phpinfo页面

性能优化

安装Zend Optimizer

要求PHP版本为5.2,不支持Ubuntu10.04的PHP5.3,请参照PHP5.2

下载 Zend Optimizer。 直接贴下载地址,参考版本号改(这是32位的),不然主页要注册才能下

 http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz 
tar zxvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.9-linux-glibc23-i386/data/5_2_x_comp
sudo mkdir /usr/local/zend
sudo cp ZendOptimizer.so /usr/local/zend 

编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

开头加入,注意标点符号要英文。

[Zend Optimizer]
zend_optimizer.optimization_level=1  
zend_extension="/usr/local/zend/ZendOptimizer.so"

重启apache2

sudo /etc/init.d/apache2 restart 

还是上面那个phpinfo文件,要能看到如下信息

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies

安裝XCache

sudo apt-get install php5-xcache
root@ubuntu:/home/qii# dpkg -l | grep xcach
ii  php5-xcache                          1.2.2-5                                         Fast, stable PHP opcode cacher

xcache配置文件路径是

/etc/php5/conf.d/xcache.ini

编辑php.ini

sudo gedit /etc/php5/apache2/php.ini

把xcache.ini的内容加入到php.ini。 重启apache2

sudo /etc/init.d/apache2 restart 

检查安装是否成功

root@ubuntu:/home/qii# php -v
PHP 5.2.10-2ubuntu6 with Suhosin-Patch 0.9.7 (cli) (built: Oct 23 2009 16:30:10) 
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
    with XCache v1.2.2, Copyright (c) 2005-2007, by mOo

还有前面info.php页应该有XCache模块

info页面的XCache模块

这里有点奇怪的是,如果不把xcache.ini的内容加入php.ini,apache也能载入XCache,但info.php上没XCache模块。

安装eAccelerator

sudo apt-get install php5-dev

下载 eAccelerator

wget http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2
tar jxvf eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1 
phpize
sudo ./configure -enable-eaccelerator=shared
sudo make
qii@ubuntu:~/tmp/eaccelerator-0.9.6.1$ sudo make install
Installing shared extensions:     /usr/lib/php5/20060613+lfs/

修改php.ini文件,安装为Zend扩展,最好放在开头,放到[zend]之前,免的出莫名其妙的问题:

sudo vi /etc/php5/apache2/php.ini
[eaccelerator]
zend_extension="/usr/lib/php5/20060613+lfs/eaccelerator.so" 
eaccelerator.shm_size="16" 
eaccelerator.cache_dir="/tmp/eaccelerator" 
eaccelerator.enable="1" 
eaccelerator.optimizer="1" 
eaccelerator.check_mtime="1" 
eaccelerator.debug="0" 
eaccelerator.filter="" 
eaccelerator.shm_max="0" 
eaccelerator.shm_ttl="0" 
eaccelerator.shm_prune_period="0" 
eaccelerator.shm_only="0" 
eaccelerator.compress="1" 
eaccelerator.compress_level="9" 
eaccelerator.allowed_admin_path="/var/www/control.php"

创建cache缓存目录

eaccelerator.cache_dir="/var/cache/eaccelerator"   这里定义cache路径

默认值是/tmp/eaccelerator,这非常简单因为任何人都对该目录可写,但是并不明智,因为重启后系统会自动清理该目录。一个更好的地方是/var/cache/eaccelerator。创建该目录并确保它对eAccelerator的使用者可写(通常该用户是你的网络服务器运行者,可能是www-data)。 使用默认值的话这样继续:

mkdir /tmp/eaccelerator
chmod 777 /tmp/eaccelerator

改成 /var/cache/eaccelerator的话这样继续,先改php.ini

eaccelerator.cache_dir="/var/cache/eaccelerator" 
sudo mkdir /var/cache/eaccelerator
sudo chown root:www-data /var/cache/eaccelerator
sudo chmod u=rwx,g=rwx,o= /var/cache/eaccelerator

复制控制文件control.php到网站根目录

sudo cp control.php /var/www/

修改control.php的$user和$pw,默认是admin和eAccelerator

sudo vi /var/www/control.php 

重启apache

sudo /etc/init.d/apache2 restart

打开 http://localhost/control.php

eAccelerator control.php页面

查看之前的info.php页面,有下列字段:

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
    with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator
    

其他

PDO的安装

pecl search pdo
sudo pecl install pdo
sudo pecl install pdo_mysql

最后编辑php.ini

sudo gedit /etc/php5/apache2/php.ini 

再最后面添加两行:

extension = pdo.so
extension = pdo_mysql.so

GD库的安装

sudo apt-get install php5-gd


记得装完重启apache

sudo /etc/init.d/apache2 restart

Zend Studio的安装

下载

http://www.phpchina.com/download/show.php?id=6553795&sort=ZendStudio

安装

进入文件所在目录,比如

cd /home/kishi/Download

解压

tar zxvf ZendStudio-5_5_1.tar.gz

然后

cd ZendStudio-5_5_1

安装

sudo ./ZendStudio-5_5_1.bin


剩下的就是纯图形界面了...安装完之

解决乱码的问题


装完之后 可能会乱码 口口 这样子的。。

别着急 一步一步来

先要删除或者重命名一个字体文件

rm /home/YourUsername/Zend/ZendStudio-5.5.1/jre/lib/fonts/LucidaSansRegular.ttf

然后把你想要用的字体 copy 一份到/home/YourUsername/Zend/ZendStudio-5.5.1/jre/lib/fonts (如果你的安装路径是默认的话) 并且改名为LucidaSansRegular.ttf
比如我用的是从win下面拷来的宋体

cp /usr/share/fonts/truetype/simsun.ttc /home/YourUsername/Zend/ZendStudio-5.5.1/jre/lib/fonts/LucidaSansRegular.ttf


OK 。重启ZendStudio 搞定。

其他的看个人喜好咯。。
BTW:如果你的ZendStudio 某些窗口打开之后是空白的 那么把系统-首选项-外观-视觉效果 改为无 就可以了。。也就是没有特效。。

无法解析php文件,浏览器提示下载所要打开的php文件

执行:

sudo apt-get install libapache2-mod-php5
sudo a2enmod php5


如果显示为:

This module does not exist!


那就要彻底删除libapache2-mod-php5,然后重新安装它

sudo apt-get remove --purge libapache2-mod-php5
sudo apt-get install libapache2-mod-php5

重启apache2

sudo /etc/init.d/apache2 restart

清除浏览器缓存,然后输入http:localhost

虚拟主机

Apache虚拟主机指南