您的位置:首页 > 其它

lamp/lnmp阶段复习

2015-12-12 13:43 441 查看
准备两台机器,一台跑mysql,一台跑web
一:安装mysql














192.168.31.166是web机器
在web机器上登录mysql:



web机器:安装的环境是LAMP加nginx,这里面不存在LNMP,nginx只是作为一个代理,那他作为代理的时候是不需要php环境的。


LAMP环境安装好后,接下来做一些配置



上图是bbs是discuz论坛
wordpress在cn.wordpress.org下载





解压wordpress:









pma就是phpmyadmin


添加三个虚拟主机



检查配置文件是否正确、检查80端口是否监听



在host文件添加




现在在浏览器访问bbs.abc.com,因为这个我们没有安装,我们是直接复制的也就是他这个里面已经存在了配置文件,他的配置文件使我们的老系统、老论坛的配置文件,可能我们访问会存在一些问题,如下图所示,当然你也可以重新安装。当然在这里我用另外一种方法去改他,去改配置文件的方法,








UC_DBNAME还没有,等会把本地的mysql拷贝过去。为啥要讲这种方法,因为日后可能会面临网站迁移,改域名。


global是全局的







现在改完了,可以试着刷新浏览器,发现错误已经发生了改变,实际上他已经连上对方数据库,但是对方数据库里并没有指定aming这个库,所以需要把库拷贝过去


这个错误说明对方机器需要安装rsync和openssh-clients










浏览器再次刷新下:又报这样的错,是权限问题






现在再次刷新浏览器,正常了,进入discuz页面了。

点默认版块又报错了



这是rewrite伪静态,那我们把伪静态再次配置下,在bbs虚拟主机中添加伪静态规则










再次刷新浏览器,又报错



进入虚拟主机配置文件,把之前的参数删掉,用下面的参数


现在再次刷新浏览器,点默认版块,现在是正常了,但是图片没加载进来









还有个地方:cd /data/bbs/,用grep他的目的是为了看在哪些文件里用到了www.1.com,-r目的是搜索那些子目录




进入管理中心把缓存删一下:



现在再次刷新浏览器,图片就加载进来了



安装wordpress,只要把wordpress程序放到指定的目录下去,然后再去绑定好这个域名就可以直接访问安装了






提交后会无法连接数据库



这是因为没有创建数据库里








创建wp-config.php



把复制的文本拷贝过来。







下面来安装phpmyadmin










如何去动静分离?80端口如何用nginx启动?apache要启动88端口。用80端口代理88端口
把apache端口改成88:进入apache主配置文件,把lisen 80改成88


再进入apache虚拟主机配置文件把80端口改成88








配置discuz.conf
server{ listen 80; server_name bbs.abc.com; index index.html index.htm index.php; root /date/bbs;
#根据user_agent控制(这个user_agent可以在apache里面配置,也可以在nginx里配置) if ($http_user_agent ~ 'bingbot/2.0|MJ12bot/v1.4.2|Spider/3.0|YoudaoBot|Tomato|Gecko/20100315'){ return 403; }location ~ \.php$ { (这里是:访问php的时候需要做一个代理) proxy_pass http://127.0.0.1:88; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }location ~ .*\.(js|css)?$ { expires 24h; access_log off; }location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names *.baidu.com\ *.google.com *.google.cn *.soso.com ; if ($invalid_referer) { return 403; #rewrite ^/ http://www.example.com/nophoto.gif; } access_log off; }rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last; rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last; rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last; rewrite ^([^\.]*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last; rewrite ^([^\.]*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last; rewrite ^([^\.]*)/(fid|tid)-([0-9]+)\.html$ $1/index.php?action=$2&value=$3 last; access_log /home/logs/discuz.log combined_realip;}


检测下nginx配置文件是否正确,重启nginx







配置blog.conf (参考 http://www.upupw.net/nginxhelp/n33.html)server{ listen 80; server_name blog.abc.com; index index.html index.htm index.php; root /date/blog;#根据user_agent控制 location ~ \.php$ { proxy_pass http://127.0.0.1:88; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }location ~ .*\.(js|css)?$ { expires 24h; access_log off; } location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names *.baidu.com\ *.google.com *.google.cn *.soso.com ; if ($invalid_referer) { return 403; #rewrite ^/ http://www.example.com/nophoto.gif; } access_log off; } 测试:在浏览器访问blog.abc.com,出现重定向循环

配置pma




server

{

listen 80;

server_name pma.abc.com;

index index.html index.htm index.php;

root /data/pma;

location / {

auth_basic "Auth";

auth_basic_user_file /usr/local/nginx/conf/htpasswd;

location ~ \.php$ {

proxy_pass http://127.0.0.1:88;
proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}



浏览器访问:




nginx记录日志,但不记录图片等静态页的日志,并且配置日志切割




discuz和wordpress访问后台限制一下ip白名单,比如只允许192.168.1.100访问(nginx)






192.168.31.144是真机的ip





浏览器访问:




那么为什么是403呢?因为我们走的是代理,代理的ip是127.0.0.1,所以在这里虚拟主机配置文件你限制任何一个ip,只要把127.0.0.1打开,所有的ip都可以访问



重启apache,重新访问


他阻断的是代理的ip,那这个时候我们该怎么办?只能去再nginx上去做限制了
vim discuz.conf



回到apache虚拟主机配置文件



把方框内注释掉。把apache的放开,把nginx的限制
重启apache和nginx



访问:



那么现在用另外一个ip去访问下:达到目的了




wordpress的后台在哪里呢?



wordpress也是在nginx里去限制





phpmyadmin整个站点需要配置用户认证(nginx)



写一个mysql备份的脚本,每天5点执行,需要远程拷贝到web机器上
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息