Debian安装Apache2+MySQL5+PHP5(zz)
转载:http://hi.baidu.com/lostdays/item/1d5e7e4833b4d20fc116134b
终于在Debian用apt-get安装好LAMP了,之前在CentOS使用编译安装,速度比现在快,但内存使用怎么都优化不下来,又没时间深入研究。。。使用yum安装后更头疼,别的都可以,phpmyadmin居然不能连接数据库。。。试了N种方法都不行,最终只能放弃。装回Debian了- -
记录下自己的安装过程,以备后用~
1,更新Debian:
apt-get update
apt-get updgrade
2,安装Apache2:
由于内存只有360M,得省着用,所以选择了prefork模式安装:
apt-get install apache2-mpm-prefork
3,安装mysql
apt-get install mysql-server-5.0 mysql-common mysql-client
4,安装php相关组件,并整合mysql
apt-get install php5-common php5-mysql php5-cgi php5-gd php5-mcrypt libapache2-mod-php5 php5-memcache php5-imagick php5-suhosin php5-xmlrpc
如果需要,可以如下安装
apt-get install php5-common php-pear php5-curl php5-dev php5-gd php5-idn php5-imap php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xsl
注:
如果要删除某个包,可以用以下命令
apt-get remove
比如删除php-cgi
apt-get remove php-cgi
如果不知道有哪些安装包,可以用如下命令:
apt-cache search
比如:
apt-cache search apache2
5,设置Mysql账户、密码,及优化:
mysqladmin -u root password '' //在引号中输入密码
登陆MySQL数据库
mysql -u root -p
修改原始账户(mysql)
mysql>use mysql;
mysql>update user set user="自己设定用户名" where user="root"; (将mysql的root用户名修改成centos,防止root的密码被暴力破解)
mysql>select Host,User,Password,Select_priv,Grant_priv from user;
mysql>delete from user where user=''; (删除user用户)
mysql>delete from user where password=''; (删除user用户)
mysql>delete from user where host=''; (删除user用户)
mysql>drop database test; (删除默认的test数据库)
mysql>flush privileges; (刷新mysql的缓存,让以上设置立即生效)
mysql>quit;
修改MySQL的配置文件在/etc/mysql/my.cnf
找到 #skip-innodb 去掉注释
重新载入Mysql
/etc/init.d/mysql reload
或者重启Mysql
/etc/init.d/mysql restart
6,设置php
修改文件:/etc/php5/apache2/php.ini
找到以下数值,修改为自己需要的数值
memory_limit
post_max_size
upload_max_filesize
关闭以下功能 Off
enable_dl
display_errors
7,Apache优化及设置:
修改 /etc/apache2/apache2.conf文件
Timeout 300
改为
Timeout 60
KeepAliveTimeout 15
改为
KeepAliveTimeout 5
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
改为
StartServers 3
MinSpareServers 5
MaxSpareServers 10
MaxClients 50
MaxRequestsPerChild 2000
找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
保存退出,并重启apache
/etc/init.d/apache2 reload
/etc/init.d/apache2 restart
激活deflate模块(用于页面压缩),在SSH界面输入:
a2enmod deflate
让apache2得进程加载新配置的模块
/etc/init.d/apache2 force-reload
再修改 /etc/apache2/apache2.conf文件,在最后加入
在文件之后加入:
DeflateCompressionLevel 6
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE css js
激活mod rewrite(用于伪静态连接地址),在SSH界面输入:
a2enmod rewrite
让apache2得进程加载新配置的模块
/etc/init.d/apache2 force-reload
再修改 /etc/apache2/apache2.conf文件,在最后加入:
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
网上有人这么设置的,不过很多时候,网站多了很不好控制,都已我没有在apache2.conf添加这最后一段。
重新载入apache
/etc/init.d/apache2 reload
或重启apache
/etc/init.d/apache2 restart
8,在Debian Apache5下设置多域名:
设置/etc/apache2/sites-available/default,将ServerAdmin改为你自己的邮箱,并在之前添加一段,作为你的空间根目录域名:
ServerName xxx.com
将/var/www/目录全部修改为 /home/www/
在SSH界面输入:
chmod 755 -R /home/www //设置网站根目录权限
ls -lh //查看文件夹属主
cd /home/www/
chown -R www-data:www-data /home/www/
做好这些后,保存并退出default。
在/home/www/建立新文件夹“1”;然后在当前目录“/sites-available/”新建一个文件,假设文件名为1,打开文件1,输入以下内容:
<VirtualHost *>
ServerName xxx.com //此处输入域名
ServerAdmin
DocumentRoot "/home/www/1/" //网站目录
<Directory /> //这段添加后,可直接支持.htaccess
Options FollowSymLinks
AllowOverride All
</Directory>
ErrorLog "/var/log/apache2/1-error.log"
CustomLog "/var/log/apache2/1-access.log" common
</VirtualHost>
保存该文件,然后在SSH界面下输入:
a2ensite 1
这时,设定的网站域名已经被绑定了,在/etc/apache2/sites-enabled/文件夹会有一个1的快捷链接。重启一下Apache后,就可以操作该网站了:
/etc/init.d/apache2 restart
现在就可以用浏览器登陆你的域名了~
分开设定确实麻烦了点,但好处还是很大的,比如我要单独维护网站1,只需要输入以下命令:
a2dissite silent
然后重启一遍即可
/etc/init.d/apache2 restart
其他网站还是会正常运作,不会受到牵连~
9,安装phpmyadmin:
由于debian的php版本是5.2的,所以可以使用phpmyadmin3.1,也省去了不少麻烦,不用apt-get安装,直接如下操作即可:
cd /usr/local/src
wget http://ncu.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-3.2.0-all-languages.tar.gz
tar zxvf phpMyAdmin-3.2.0-all-languages.tar.gz
cp -rf phpMyAdmin-3.2.0-all-languages /home/www/phpmyadmin
10,安装sendmail:
很多人说sendmail不好,不过我不是要邮件服务器,只不过需要一些邮件发送支持罢了,sendmail对我是足够了~
apt-get install sendmail
11,安装 Zend Optimizer
cd /usr/local/src
wget http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
tar xzvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
./ZendOptimizer-3.3.3-linux-glibc23-i386/install.sh
按照它的提示一步步进行就行了。
总之一句话。如果你的服务器环境不需要ZendOptimizer,那么能不安就不安装这个。避免和eaccelerator冲突。
Debian安装Apache2+MySQL5+PHP5(zz)的更多相关文章
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...
- 自己编写的:centos6.6上编译安装apache2.4+php5.6+mysql5.6【亲自】
在centos6.6上安装apache2.4+php5.6+mysql5.6 关于wget的安装 将之前装系统的.iso文件挂载到光驱 由于我在/home/jinnan/下建立了一个cdrom文件夹 ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...
- Windows下安装Apache2.4+PHP5.4+Mysql5.7
注:文中所写的安装过程均在Win7 x86下通过测试,提供的百度云下载链接均为32位安装包,如需Apache和PHP的64位安装包请从官网下载! 一.安装Apache2.4.12 Apache官方下载 ...
- ubuntu 安装apache2,mysql,php5,phpmyadmin等软件
1.安装apache2 sudo apt-get install apache2 输入Y回车 apache2 安装完成 检测:在浏览器输入localhost 出现It works则成功. 2. ...
- CentOS6.4下编译安装Apache2.4+PHP5.6
安装Apache2.4: 首先从 http://httpd.apache.org/download.cgi#apache24下载apache源码包httpd-2.4.4.tar.gz从 http: ...
- win7安装 Apache2.2 PHP5.3 MySQL5.6
. APACHE2.2 经典参考资料 http://blog.csdn.net/yousuosi/article/details/9859507 官方下载地址 http://mirror.bi ...
随机推荐
- c++ 概念及学习/c++ concept&learning(一)
学习过计算机组成原理就会知道,处理器会从主存中取得指令,然后进行解释执行.而他们的交流方式是以二进制方式进行的,也就是他们只能识别1和0 :其实计算机是不知道1和0的,现在的实现方式是以高电压与低电压 ...
- 一个谷粉和3年的Google Reader重度使用者的碎碎念
2013-03-14 上午看到Andy Rubin辞去Android业务主管职务.由Chrome及应用高级副总裁继任的新闻,还在想这会给Android带来什么,中午刷微博的时候就挨了当头一棒:Goog ...
- hadoop2.5发布:最新编译 32位、64位安装、源码包、API以及新特性
hadoop2.5发布:最新编译 32位.64位安装.源码包.API以及新特性 http://www.aboutyun.com/thread-8751-1-1.html (出处: about云开发) ...
- eucalyptus,openNebula云构建漫谈
Eucalyptus篇 万事在于理解,技术研究贵在入脑入心.生活很苦,乐趣何在,在于君心?不能修心,则诸事繁杂!闲来无事,阅读官网文档遇此 two Why selecter?因此分享给亲们!亲,那么我 ...
- HTTP返回码总结 (zz)
Http返回码是服务器给爬虫的信息,需要有效的利用. HTTP协议状态码表示的意思主要分为五类 ,大体是 : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1×× 保留 2×× ...
- Gym 100507I Traffic Jam in Flower Town (模拟)
Traffic Jam in Flower Town 题目链接: http://acm.hust.edu.cn/vjudge/contest/126546#problem/I Description ...
- C#中ArrayList和string,string[]数组的转换
转载原地址: http://www.cnblogs.com/nextsoft/articles/2218689.html 1.ArrarList 转换为 string[] : ArrayList li ...
- 转:使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
原文地址:http://blog.codinglabs.org/articles/nginx-memc-and-srcache.html 为了提高性能,几乎所有互联网应用都有缓存机制,其中Memcac ...
- 山东理工大学ACM平台题答案关于C语言 1580 闰年
闰年 Time Limit: 1000ms Memory limit: 32768K 有疑问?点这里^_^ 题目描述 时间过得真快啊,又要过年了,同时,我们的人生也增长了一年的阅历,又成熟了一些 ...
- (转)WordPress的主查询函数-query_posts()
今天说说WordPress 的主查询函数 -query_posts(),因为我正在制作的主题里面多次用到了这个函数 . query_posts()查询函数决定了哪些文章出现在WordPress 主 循 ...