阿里云服務器下配置LAMP環境——基于CentOS 6.3
1、Apache配置
-----------------------------------------------------
vi /etc/httpd/conf/httpd.conf 編輯文件
Options Indexes FollowSymLinks
在331行 修改為:Options Includes ExecCGI FollowSymLinks(允許服務器執行CGI及SSI)
#AddHandler cgi-script .cgi
在796行 修改為:AddHandler cgi-script .cgi .pl (允許擴展名為.pl的CGI腳本運行)
AllowOverride None
在338行 修改為:AllowOverride All (允許.htaccess)
AddDefaultCharset UTF-8
在759行 修改為:AddDefaultCharset GB2312 (添加GB2312為默認編碼)
Options Indexes MultiViews
找到這一行,將“Indexes”刪除 ,變為此狀態 Options MultiViews?(不在瀏覽器上顯示樹狀目錄結構)
DirectoryIndex index.html index.html.var
在 402行 修改為:DirectoryIndex index.html index.htm Default.html Default.htm index.php Default.php index.html.var ?(設置默認首頁文件,增加index.php)
KeepAlive Off
在76行 修改為:KeepAlive On (允許程序性聯機)
MaxKeepAliveRequests 100
在83行 修改為:MaxKeepAliveRequests 1000 (增加同時連接數)
:wq! ?#保存退出
/etc/init.d/httpd restart 重啟
DocumentRoot '/var/www/html' ?修改為你的目錄 ? '/data0/www/xxxxxxxxx' ?(這個目錄就是掛載的數據盤)
rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html ? ?#刪除默認測試頁
Apache的日志文件ErrorLog? /etc/httpd/logs/error_log?? (php的錯誤日志也輸出到這里)CustomLog? /etc/httpd/logs/access_log combined
2、php配置
-----------------------------------------------------
vi ?/etc/php.ini ? #編輯
date.timezone = PRC ? ? #在946行 把前面的分號去掉,改為date.timezone = PRC
magic_quotes_gpc = On ? #在745行 打開magic_quotes_gpc來防止SQL注入? (php5.4開始不支持magic_quotes_gpc(防SQL流入))
log_errors = On ? ? ? ? #記錄錯誤日志
:wq! ?#保存退出
/etc/init.d/httpd restart ? #重啟Apche , php
3、掛載數據盤
-----------------------------------------------------
阿里云服務器的硬盤由兩塊組成,一塊是系統盤,一塊是數據盤,默認數據盤是沒有掛載的,如果要用到數據盤就需要自己手動掛載。
通過命令fdisk -l,可以看到設備名為/dev/xvdb。
另外在掛載前要對硬盤(/dev/xvdb)分區和格式化。
分區使用命令fdisk,格式化命令為mkfs.ext3。
如何操作可以參照官方文檔【Linux 系統掛載數據盤?】http://help.aliyun.com/manual?helpId=271
數據盤最多可以掛4塊,掛在/data0,以后其它的可以掛在/data1,/data2,/data3
數據盤的作用,阿里云服務器控制臺提供“重置”功能,可選重置系統盤,還是數據盤,如何操作系統壞了,你可以只重置系統盤,保留網站數據在數據盤。
4、配置MySql數據庫--設置初始密碼,建庫,建表,導入數據
-----------------------------------------------------
請看這里:MySql備份與恢復,遠程訪問MySql服務器
5、把mysql的數據文件,移動到“數據盤”上,防止系統壞了重做系統時數據沒有了。
-----------------------------------------------------
我再移mysql的數據文件后,使用mysql -u用戶名 -p ?登錄時,遇到了錯誤 :ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ’/var/lib/mysql/mysql.sock’ (2)
主要是修改my.cnf文件時有幾步與上文不一樣,這里說明一下。操作方法如下 :
1)、停止mysql進程
2)、把/var/lib/mysql整個目錄移到/data0/db
mv /var/lib/mysql /home/data/
這樣就把MySQL的數據文件移動到了/data0/db/mysql下
3)、修改my.cnf配置文件
不要直接使用/etc/my.cnf配置文件,請到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個(我是my-medium.cnf)到/etc/并改名為my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
4)、編輯MySQL的配置文件/etc/my.cnf
為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。
# The following options will be passed to all MySQL clients[client]#password = your_passwordport = 3306#socket = /var/lib/mysql/mysql.sock #注釋了socket=/data0/db/mysql/mysql.sock #新加的內容# Here follows entries for some specific programs
# The MySQL server[mysqld]port = 3306#socket = /var/lib/mysql/mysql.sock #注釋了datadir=/data0/db/mysql #新加的內容socket=/data0/db/mysql/mysql.sock #新加的內容
5)、MySQL啟動腳本/etc/rc.d/init.d/mysqld 不用做任何修改
6)、重新啟動MySQL服務
/etc/rc.d/init.d/mysqld start
如果工作正常移動就成功了,否則對照前面的7步再檢查一下。
移動完MySql之后,PHP連接不上Mysql數據庫了
-----------------------------------------------------
經過上面的的操作,把MySql的數據文件移到其它目錄后,PHP連接不上MySql數據庫了,是因為找不mysql.sock文件。
解決方法一:
建一個軟連接
cd?/var/lib
mkdir mysql
ln -s ?/data0/db/mysql/mysql.sock ?/var/lib/mysql/mysql.sock
解決方案二:
修改/etc/php.ini文件
找到 ?mysql.default_socket = ? 一行,這個值一開始是空的,php將會使用內建在mysql中的默認值。
修改為以下內容:
mysql.default_socket = /data0/db/mysql/mysql.sock
mysql.sock的文件位置請跟據你的實際情況填寫。
還有一處mysqli.default_socket =,要不要修改視情況吧,我沒有修改。
轉自:http://elf8848.iteye.com/blog/1698351
相關文章: