生活随笔
收集整理的這篇文章主要介紹了
[网站上线]Lamp环境及其后续配置
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
防火墻配置
下面是云天河在騰訊云上配置防火墻的過程,
目前只配置INPUT、OUTPUT和FORWORD都是ACCEPT的規(guī)則
一、檢查iptables服務(wù)狀態(tài)
首先檢查iptables服務(wù)的狀態(tài)
service iptables status
如果顯示
iptables: Firewall is not running
說明iptables服務(wù)是有安裝的,但是沒有啟動(dòng)服務(wù)
如果沒有安裝的話可以直接yum安裝
yum install -y iptables
啟動(dòng)iptables
service iptables start
如果顯示
iptables: Applying firewall rules: [ OK ]
再看一下當(dāng)前iptables的配置情況
iptables -L -n
二、清除默認(rèn)的防火墻規(guī)則
# 首先在清除前要將policy INPUT改成ACCEPT,表示接受一切請(qǐng)求。# 這個(gè)一定要先做,不然清空后可能會(huì)悲劇iptables -P INPUT ACCEPT# 清空默認(rèn)所有規(guī)則iptables -F# 清空自定義的所有規(guī)則iptables -X# 計(jì)數(shù)器置0iptables -Z
三、配置規(guī)則
# 允許來自于lo接口的數(shù)據(jù)包# 如果沒有此規(guī)則,你將不能通過127.0.0.1訪問本地服務(wù),例如ping 127.0.0.1iptables -A INPUT -i lo -j ACCEPT# ssh端口22iptables -A INPUT -p tcp --dport 22 -j ACCEPT# FTP端口21iptables -A INPUT -p tcp --dport 21 -j ACCEPT# web服務(wù)端口80iptables -A INPUT -p tcp --dport 80 -j ACCEPT# tomcatiptables -A INPUT -p tcp --dport xxxx -j ACCEPT# mysqliptables -A INPUT -p tcp --dport xxxx -j ACCEPT# 允許icmp包通過,也就是允許pingiptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT# 允許所有對(duì)外請(qǐng)求的返回包# 本機(jī)對(duì)外請(qǐng)求相當(dāng)于OUTPUT,對(duì)于返回?cái)?shù)據(jù)包必須接收啊,這相當(dāng)于INPUT了iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT# 如果要添加內(nèi)網(wǎng)ip信任(接受其所有TCP請(qǐng)求)iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT# 過濾所有非以上規(guī)則的請(qǐng)求iptables -P INPUT DROP# 要封停一個(gè)IP,使用下面這條命令:iptables -I INPUT -s ***.***.***.*** -j DROP# 要解封一個(gè)IP,使用下面這條命令:iptables -D INPUT -s ***.***.***.*** -j DROP
四、保存
首先
iptables -L -n
看一下配置是否正確
沒問題后,先不要急著保存,因?yàn)闆]保存只是當(dāng)前有效,重啟后就不生效,
這樣萬一有什么問題,可以后臺(tái)強(qiáng)制重啟服務(wù)器恢復(fù)設(shè)置
另外開一個(gè)ssh連接,確保可以登陸
確保沒問題之后保存
# 保存service iptables save# 添加到自啟動(dòng)chkconfigchkconfig iptables on
修改防火墻端口:修改?/etc/sysconfig/iptables?文件
配置 LAMP 環(huán)境
搭建?Linux+Apache+Mysql+PHP+Redis環(huán)境
LAMP一鍵安裝包我們使用的是
https://lamp.sh/download.html
一般來說下載在線安裝包即可,完整安裝包太大了
下載好了通過SecureFXPortable上傳至root根目錄,
然后打開SecureCRTPortable,依次輸入以下命令安裝?wget、screen、unzip
yum -y install wget screen unzip# 創(chuàng)建 lamp screen 會(huì)話screen -S lamp# 解壓剛剛上傳的.zip文件。注意,你的安裝包有可能名字和的不一樣# unzip lamp-master.zip# 授予剛剛解壓出來的所有文件夾中的文件執(zhí)行權(quán)限。注意,有可能你的文件夾名字和云天河的不一樣chmod -R 777 lamp-master# 打開進(jìn)入目錄cd lamp-master# 啟動(dòng)安裝程序# ./lamp.sh 2>&1 | tee lamp.log
接下來選擇安裝的版本,盡量接近如下配置,如果沒有正好的可以高一些,盡量不要低
Apache 2.4
PHP 5.6不建議7.0
MySQL
中間會(huì)提示要求創(chuàng)建密碼,輸入的密碼一定要牢記,如果遇到選擇位置的時(shí)候,默認(rèn)即可,具體參考參見
https://teddysun.com/lamp
最終確認(rèn)完畢,輸入回車鍵開始安裝,安裝大概要半小時(shí)
安裝完畢后檢查是否成功,重啟Apache服務(wù)器。SSH輸入
service httpd restart
如果啟動(dòng)失敗,提示錯(cuò)誤,導(dǎo)致Apache無法啟動(dòng),那么有可能是因?yàn)槟闼褂玫南到y(tǒng)版本太低,
推薦CentOS6.6【如果是學(xué)生類服務(wù)器建議32位,企業(yè)類64位】
如果啟動(dòng)成功,在本機(jī)Windows下打開瀏覽器,輸入Linux的IP地址,查看是否能夠訪問
至此,Lamp環(huán)境配置完畢
云天河的Lamp安裝包百度云鏈接:http://pan.baidu.com/s/1eSx1Fqy?密碼:2pkf 或者去https://teddysun.com/lamp
安裝Git
yum -y install git
網(wǎng)站上線配置
一、apache
第一步:linux中輸入下面命令
vi /usr/local/apache/conf/httpd.conf
打開后在里面直接輸入[這是vi編譯器的搜索命令,按n繼續(xù)往下查找,N繼續(xù)往上搜索]
/Directory
找到
<Directory "/data/www/default">
將其改為
<Directory "/data/www/">
之后你的項(xiàng)目直接存在www目錄下就行了【如果不這樣設(shè)置,可能會(huì)出現(xiàn)無法訪問的問題,因?yàn)镈irectory是設(shè)置訪問權(quán)限的】
如果你不太了解其中的權(quán)限控制,而且你的項(xiàng)目使用了第三方框架,那么請(qǐng)將對(duì)應(yīng)項(xiàng)目目錄設(shè)置為777權(quán)限,因?yàn)榭蚣苄枰獙懖僮?br />如,www下的項(xiàng)目名為mall,則
chmod 775 /data/www/mall/ -R
第二步:linux中輸入下面命令
vi /usr/local/apache/conf/extra/httpd-vhosts.conf
將改為
<VirtualHost *:80>## 這個(gè)是個(gè)人博客的### 如果服務(wù)器出錯(cuò),發(fā)送錯(cuò)誤信息到指定的郵箱地址ServerAdmin myboyli4@163.com### 你所綁定的域名ServerName www.hlzblog.top### 如果對(duì)應(yīng)多級(jí)域名搜索不到,則指向到這個(gè)域名ServerAlias hlzblog.top### DocumentRoot常量DocumentRoot "/data/www/blog"### 按從左到右的優(yōu)先次序自動(dòng)讀取默認(rèn)主頁(yè)面,例如index.php在當(dāng)前目錄不存在,再去讀取index.htmlDirectoryIndex index.php index.html index.htm### 這個(gè)是重定向404頁(yè)面ErrorDocument 404 http://www.hlzblog.top/default.html## 關(guān)閉apache報(bào)錯(cuò)php_flag display_errors off## 偽靜態(tài)配置 ## 開啟重寫引擎RewriteEngine on ## 如果原本就存在這個(gè)目錄或文件,則不會(huì)用重寫RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-dRewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f ## 重寫規(guī)則,正則匹配左邊[偽靜態(tài)的網(wǎng)站],得到的是對(duì)應(yīng)右邊的[實(shí)際的內(nèi)容],NC表示不區(qū)分大小寫,因?yàn)閘inux會(huì)區(qū)分RewriteRule ^/type/([023456789]+).html$ /index.php?type=$1 [NC]RewriteRule ^/article/id/([\d]+).html$ /index.php?type=8&id=$1 [NC] ## 圖片防盜鏈RewriteCond %{HTTP_REFERER} !^$ [NC]RewriteCond %{HTTP_REFERER} !hlzblog.top [NC]RewriteCond %{HTTP_REFERER} !google.com [NC]RewriteCond %{HTTP_REFERER} !baidu.com [NC]RewriteCond %{HTTP_REFERER} !mall.hlzblog.top [NC]RewriteCond %{HTTP_REFERER} !bbs.hlzblog.top [NC] ## 防盜鏈的占位圖片得指向站外RewriteRule ^\.(jpg|gif|png|bmp|swf|jpeg)$ https://i.loli.net/2018/02/14/5a83ba42d1397.png [R,NC,L]### 權(quán)限設(shè)置 <Directory /> Options FollowSymLinks ## 這是是否允許.htaccess文件讀取的,一般設(shè)置為None, ## 因?yàn)?htaccess每次打開都會(huì)在目錄下去查找.htaccess文件,會(huì)耗性能 AllowOverride None Order deny,allow ### 訪問頁(yè)面的IP權(quán)限,這里表示允許所有IP的都允許訪問 ### 如果要拒絕某IP的訪問,例如,拒絕IP為210.10.56.32 的訪問 ### deny from 210.10.56.32 ### 拒絕某個(gè)IP字段的訪問 ### deny from 219.5.45.0 ~ 219.5.45.255 Allow from all ### 這個(gè)是跟文件是否設(shè)置密碼相關(guān)的 ### 例如,一個(gè)目錄啟用了密碼保護(hù),想單獨(dú)開放它的一個(gè)子目錄, ### 讓這個(gè)子目錄無須密碼即可訪問,那么需要相關(guān)設(shè)置 Satisfy all </Directory></VirtualHost>
讓服務(wù)器讀取對(duì)應(yīng)目錄下類似的配置文件,實(shí)現(xiàn)虛擬多站點(diǎn)
Include /usr/local/apache/conf/vhost/*.conf
二、phpmyadmin
因?yàn)橹拔覀冊(cè)诎惭bphpadmin的時(shí)候,它叫我們輸入過數(shù)據(jù)庫(kù)密碼,所以我們記得密碼就行
我們現(xiàn)在因?yàn)榘盐募J(rèn)在www目錄下的,所以我們給個(gè)二級(jí)域名給phpmyadmin就可以了,操作如下:
阿里云 => 域名管理 => 添加二級(jí)域名
再添加一個(gè)虛擬站點(diǎn)指向phpmyadmin的目錄就行,現(xiàn)在登陸,用之前的密碼就行
如果平時(shí)不用它,記得把訪問權(quán)限設(shè)置為
deny from all;
三、關(guān)于php默認(rèn)配置
大多情況下默認(rèn)報(bào)告錯(cuò)誤信息是關(guān)閉的,但有時(shí)候有例外,我們?cè)谶@里講下吧
在我們找到php.ini文件然后再修改里面的內(nèi)容搜索?display_errors?,應(yīng)該會(huì)找到這樣一行
display_errors = On
你把On設(shè)置為Off就行了
總結(jié)
以上是生活随笔為你收集整理的[网站上线]Lamp环境及其后续配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。