安装mysql+php+apache
ServerOnly
|
1#
ServerOnly 发表于 2006-02-16 13:38
安装mysql+php+apache
安装mysql+php+apache
1. 简介 2. 环境 2.1 LFS 6.1 2.2 安装包 2.3 以root登录 3. 安装 3.1 mysql 3.2 apache+php 4. 后续工作 4.1 配置mysql开机启动 4.2 配置apache开机启动 5. 附录 5.1 once-off script 5.2 后记 1. 简介 介绍LAMP的文章很多。本文是基于源安装文档并在一个较为基础的Linux上测试通过。 ‘较为基础的Linux’是指较为简化的并具备能够胜任大多数工作能力的Linux而非较为流行的Linux,此例使用LFS。 在此基础上测试通过,在其它发行版上也较通用。 2. 环境 2.1 LFS 6.1 2.2 安装包 以下安装包存放于/root/lamp/ mysql-standard-5.0.18-linux-i686-glibc23.tar.gz php-5.1.2.tar.gz httpd-2.2.0.tar.bz2 2.3 以root登录 3. 安装 3.1 mysql mysql提供了binary的安装方式,以下步骤源于其INSTALL文档 原文档内容:
复制内容到剪贴板
实际操作:
代码:shell> groupadd mysqlshell> useradd -g mysql mysql shell> cd /usr/local shell> gunzip < /PATH/TO/MYSQL-VERSION-OS.tar.gz | tar xvf - shell> ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql shell> cd mysql shell> scripts/mysql_install_db --user=mysql shell> chown -R root . shell> chown -R mysql data shell> chgrp -R mysql . shell> bin/mysqld_safe --user=mysql &
复制内容到剪贴板
3.2 apache+php代码:groupadd mysqluseradd -g mysql mysql cd /usr/local tar zxf /root/lamp/mysql* ln -s mysql* mysql cd mysql scripts/mysql_install_db --user=mysql chown -R root . chown -R mysql data chgrp -R mysql . bin/mysqld_safe --user=mysql & 以下步骤源于php安装文档 http://www.php.net/manual/zh/install.unix.apache2.php 原文档内容:
复制内容到剪贴板
实际操作:代码:1. gzip -d httpd-2_0_NN.tar.gz2. tar xvf httpd-2_0_NN.tar 3. gunzip php-NN.tar.gz 4. tar -xvf php-NN.tar 5. cd httpd-2_0_NN 6. ./configure --enable-so 7. make 8. make install 现在已经将 Apache 2.0.NN 安装在 /usr/local/apache。本安装支持可装载模块 和标准的 MPM prefork。之后,可以使用如下命令启动 Apache 服务器: /usr/local/apache2/bin/apachectl start 如果成功,可以停止 Apache 服务器并继续安装 PHP: /usr/local/apache2/bin/apachectl stop. 9. cd ../php4-NN 10. 现在需要配置 PHP。在这里可以用各种各样的参数来自定义PHP,例如启动哪些 扩展功能包的支持等。用 ./configure --help 命令可以列出当前可用的所有参 数。在此例中,将给出一个在有 MySQL 支持的 Apache 2 上进行配置的范例。 用户本地的 apxs 的路径可能会不同,事实上,在用户的系统中,它可能被命名为 apxs2。 ./configure --with-apxs2=/usr/local/apache2/bin/apxs 11. make 12. make install 如果决定在安装后改变配置选项,只需重复最后的三步,然后需要重新启动 Apache 使新模块生效。无需重新编译。 请注意,除非明确有提示,否则“make install”命令将安装 PEAR、各种 PHP 工具 诸如 phpize,安装 PHP CLI 等等。 13. 配置 php.ini cp php.ini-dist /usr/local/lib/php.ini 可以编辑 php.ini 文件以修改 PHP 的选项。如果想要把此文件放到另外的位置, 需要在步骤 10 添加 --with-config-file-path=/path 选项。 如果选择 php.ini -recommended,请务必阅读其中的变更的列表,它们将影响 PHP 的执行。 14. 编辑 httpd.conf 文件以调用 PHP 模块。LoadMolude 表达式右边的路径必须指向 系统中的 PHP。以上的 make install 命令可能已经完成了这些,但务必要检查。 对于 PHP 4: LoadModule php4_module modules/libphp4.so 对于 PHP 5: LoadModule php5_module modules/libphp5.so 15. 告知 Apache 将特定的扩展名解析成 PHP,例如,让 Apache 将扩展名 .php 解析成 PHP。可以将任何扩展名指定为 PHP,只需添加它们,每一个用空格分隔。 例如,要添加 .phtml: AddType application/x-httpd-php .php .phtml 通常还将 .phps 扩展名设置成显示高亮的 PHP 源文件,可以这样来完成: AddType application/x-httpd-php-source .phps 16. 启动 Apache 服务器: /usr/local/apache2/bin/apachectl start [php] mkdir /root/lamp/tmp cd /root/lamp/tmp tar jxf ../http* tar zxf ../php* groupadd -g 25 apache && cd http* ./configure --enable-so make make install cd ../php* ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql make make install cp php.ini-dist /usr/local/lib/php.ini echo "AddType application/x-httpd-php .php .phtml" >> /usr/local/apache2/conf/httpd.conf useradd -c "Apache Server" -d /dev/null -g apache -s /bin/false -u 25 apache chown -R apache:apache /usr/local/apache2/htdocs sed -e 's/User daemon/User apache/' /usr/local/apache2/conf/httpd.conf > /usr/local/apache2/conf/httpd.conf.tmp sed -e 's/Group daemon/Group apache/' /usr/local/apache2/conf/httpd.conf.tmp > /usr/local/apache2/conf/httpd.conf rm /usr/local/apache2/conf/httpd.conf.pre echo "<?print 'It works';phpinfo()?>" > /usr/local/apache2/htdocs/index.php /usr/local/apache2/bin/apachectl start [/php] 4. 后续工作 4.1 配置mysql开机启动 4.2 配置apache开机启动 5. 附录 5.1 once-off script [php] groupadd mysql useradd -g mysql mysql cd /usr/local tar zxf /root/lamp/mysql* ln -s mysql* mysql cd mysql scripts/mysql_install_db --user=mysql chown -R root . chown -R mysql data chgrp -R mysql . bin/mysqld_safe --user=mysql & mkdir /root/lamp/tmp cd /root/lamp/tmp tar jxf ../http* tar zxf ../php* groupadd -g 25 apache && cd http* ./configure --enable-so make make install cd ../php* ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql make make install cp php.ini-dist /usr/local/lib/php.ini echo "AddType application/x-httpd-php .php .phtml" >> /usr/local/apache2/conf/httpd.conf useradd -c "Apache Server" -d /dev/null -g apache -s /bin/false -u 25 apache chown -R apache:apache /usr/local/apache2/htdocs sed -e 's/User daemon/User apache/' /usr/local/apache2/conf/httpd.conf > /usr/local/apache2/conf/httpd.conf.tmp sed -e 's/Group daemon/Group apache/' /usr/local/apache2/conf/httpd.conf.tmp > /usr/local/apache2/conf/httpd.conf rm /usr/local/apache2/conf/httpd.conf.tmp echo "<?print 'It works';phpinfo()?>" > /usr/local/apache2/htdocs/index.php /usr/local/apache2/bin/apachectl start [/php] 5.2 后记 感谢我自己制作的LFS安装livecd,我得以能够只用两分钟安装一个LFS环境,用于反复测试(实际上我只测试了一遍,第二遍是本着负责的态度而进行的)。 取得三个软件包后将once-off script复制到shell。 一阵翻江倒海,等整个世界都清静后,打开browser访问index.php,可爱的‘It works!’映入眼帘。 script 中 sed 用得很笨,不要深究。 |