linux+apache+mysql+php
把发布目录放在/apache,创建一个Apache用户,用nfs共享
rpm包
安装这三个软件httpd httpd-devel mysql-server mysql-devel php php-devel php-mysql
把php代码包放在apache发布目录下
启动apache
修改权限,配置mysql库,如果是站库分离,ip写mysqlIP,用户名密码,文件前缀,然后mysql给站服务器授权
源码包
httpd tar-zxf
./configure --prefix=/usr/local/http2 --enable-so --enable-rewrite &&make &&make install
开启服务 在浏览器测试
mysql 安装
创建用户
basedir datadir
useradd -s /sbin/nologin mysql
mkdir -p /usr/local/mysql
mkdir -p /data/mysql
chown mysql /data/mysql
编译安装
./configure --prefix=/usr/local/mysql --enable-assembler && make && make install
cp support-files/my-medium.cnf /etc/my.cnf
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/
cp support-files/mysql.server /etc/init.d/mysqld
修改权限并设置开机启动
chmod 755 /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
启动mysql服务
/etc/init.d/mysqld start
如果启动不起来
MySQL初始化命令/usr/local/mysql/bin/mysql_install_db --user=mysql
如果有提示让改skip什么的,在mysql.conf里改
php
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-pdo-mysql=/usr/local/mysql/
make && make install
如果装LAP,不要mysql
编译PHP的时候,执行./configure --help|grep mysql
--with-pdo-mysql=mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd
修改http.conf 文件
LoadModule php7_module modules/libphp7.so (默认已存在)
AddType application/x-httpd-php .php 这句加上就行了
DirectoryIndex index.php index.html (在indexhtml前加入 index.php)
在htdoc下创建index.php,写入
<?php
phpinfo();
?>
重启apache,在浏览器测试
WordPress
下载wordpress,解压
cp到htdos目录下
创建数据库create database character set utf8;
写入wp-config.php 修改文件权限,写入必要信息 测试
更换主题时让登FTP,在wp-config.php,输入define("FS_METHOD", "direct");
提示下载失败。 没有可以完成请求的HTTP传输器
curl库就是用来服务器项目的对外连接和通讯。所以没有开启这个模块,对于类似协议的连接和请求均无法实现。而这也解释了更新的时候为什么找不到HTTP传输器。
;extension=php_curl.dll
在php.ini中找到这一句话,把前面的分号去掉,就实现了模块开启。重启下apache服务就搞定了。
需要注意的是,wordpress在更新版本或者插件的时候,下载更新往往需要先进行文件缓存。这里就涉及到2个参数配置:
max_execution_time = 60 //php脚本的最大执行时间,默认60秒,如果觉得文件60s下载不完的话,建议放宽时间限制,0为无限制
post_max_size = 8M //post请求下php能接收的文件最大容量,默认为8M,如果文件过大的话建议放宽,0为无限制
把这几个参数配置完善,再更新版本应该不会有其他问题了。
重启apache
主从
模拟主库down机,主库上mysqldump -uroot -p --all-databases >2017all.sql
从库上#mysql -root -p < 2017all.sql
锁表master上flush tables with read lock
slave上执行stop slave
set global sql_slave_skip_counter=1 意为跳过一步 差几个position就跳过几个
多个apache服务器连到一个mysql服务器上
只需要修改配置文件wp-config.php,连到mysql服务器上
NFS使多apache服务器连接一个网站目录
nfs配置 /etc/exports 写上/data/html/ *(rw,sync,no_root_squash) 然后启动nfs
然后apache服务器上挂载
mount -t nfs 192.168.0.56:/data/html/ /var/www/html/ 和/usr/local/apache2/htdocs/
转载于:https://blog.51cto.com/mustafayin/1904854