最近在自己弄lamp的架构网站平台,而且兴致勃勃的为云服务器申请了网站备案,此贴记录我的lamp架构过程,并预计以后lamp向lnmp做数据迁移:hehehe
进入Apache官网下载稳定版Apache编译包:httpd.apache.org
解压包到指定目录 tar zxf http-2.2.0.tar.gz -C /usr/local/src
进入目录:执行编译;./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-expires --enable-headers --enable-deflate --with-mpm=worker make&&make install
拷贝系统启动脚本:cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
编辑vim /etc/init.d/httpd修改内容如下:
#!/bin/sh
# chkconfig: 35 85 15
# description: Startup script for the Apache HTTP Server
# Licensed to the Apache Software Foundation (ASF) under one or more
添加系统启动:chkconfig --add httpd
chkconfig --level 35 httpd on
安装数据库请参照另一篇博客http://xiangcc.blog.51cto.com/10201823/1650341
安装php前要安装图库支持./configure --prefix=/usr/local/libiconv;make;make install
进入php解压目录执行:./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-xmlrpc --with-openssl --with-zlib --with-freetype-dir --with-gd --with-jpeg-dir --with-png-dir --with-iconv=/usr/local/libiconv --enable-short-tags --enable-sockets --enable-zend-multibyte --enable-soap --enable-mbstring --enable-static --enable-gd-native-ttf --with-curl --with-xsl --enable-ftp --with-libxml-dir --enable-sigchild --enable-pcntl --enable-bcmath
如果出错,自行粘贴错误百度解决方法,具体方法还没有完全总结出来,先不写上,yum安装时必须关掉防火墙,否则无法安装所需插件及库文件,成功编译结果
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands
configure: WARNING: unrecognized options: --enable-zend-multibyte
编译文件make;make install
然后进入php解压目录拷贝php文件:cp php.ini-production /usr/local/php/php.ini
编辑apache配置文件:vim /usr/local/apache/conf/httpd.conf
添加DirectoryIndex index.html index.php
AddType application/x-httpd-php .php
测试是否能解析php:vim /usr/local/apache/htdecs/index.php
<php?
phpinfo();
?>
访问默认页面看到apache的编译等配置信息
开启虚拟主机:
Include conf/extra/httpd-vhosts.conf --启用虚拟主机配置文件
<Directory /usrlocal/http>--添加虚拟主机网站目录及访问权限
order allow,deny
allow from all
</Directory>
附:
编辑虚拟主机文件:例如我的配置(进行了日志分割):
<VirtualHost ip地址:80>
DocumentRoot "/usr/local/http"
ServerName 123456.com
ErrorLog "|/usr/local/apache/bin/rotatelogs -l /usr/local/apache/logs/oen.acgcommittee.com-error_%Y%m%d.log 86400"
SetEnvIf Request_URI ".*\.gif$" image-request
SetEnvIf Request_URI ".*\.jpg$" image-request
SetEnvIf Request_URI ".*\.png$" image-request
SetEnvIf Request_URI ".*\.bmp$" image-request
SetEnvIf Request_URI ".*\.swf$" image-request
SetEnvIf Request_URI ".*\.js$" image-request
SetEnvIf Request_URI ".*\.css$" image-request
CustomLog "|/usr/local/apache/bin/rotatelogs -l /usr/local/apache/logs/oem.acgcommittee.com-access_%Y%m%d.log 86400 " combined env=limage-request
</VirtualHost>
mysql需要创建网站使用的数据库:
如Discuz创建(只本地使用):grant all on bbs.* to bbs@‘localhost‘ identified by ‘pwd@123‘;
将Discuz主程序cp到虚拟主机指定的目录下,访问ip进行安装
会出现如下提示
需要对一些目录权限进行改动(进入虚拟主机目录)
博文如有后来发现的错误或操作优化时,将随时修改
本文出自 “linux窝” 博客,请务必保留此出处http://xiangcc.blog.51cto.com/10201823/1652832
原文地址:http://xiangcc.blog.51cto.com/10201823/1652832