centos6.4+nginx+mysql+php+phpmyadmin整合過程詳解_伺服器其它

來源:互聯網
上載者:User

本文執行個體講述了centos6.4+nginx+mysql+php+phpmyadmin整合過程。分享給大家供大家參考,具體如下:

裝了很多次機,做了很多次重複工作,最後,總結以下裝CentOS經驗:

註:很多問題其實都不是問題,先把selinux關了!setenforce 0 ,不然會死的很慘!

1. 先更新源

啟用國內的源:163或sohu

163:http://mirrors.163.com/.help/centos.html

如果想使用新的軟體,建議用REPL和remi的源

#remi的源rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpmrpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6#Fedora REPL的源rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpmrpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-remi

然後 yum update 升級系統

下面才是安裝我們需要的軟體,例如 nginx+php+php-fpm+mysql+vsftpd等

下面開始配置:

1. 設定系統時間

cp /usr/share/zoneinfo/Asia/Hong_Kong /etc/localtimedate #查看系統時間*/30 * * * * /usr/sbin/ntpdate time.nist.govcrontab -e

加入這行:*/30 * * * * /usr/sbin/ntpdate time.nist.gov

2. 更新系統

yum update

3. 安裝Nginx:

Niginx 官方的更新源增加: vim /etc/yum.repos.d/nginx.repo

增加以下內容

[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/6/$basearch/gpgcheck=0enabled=1yum install nginx

最佳化Nginx配置:

#根據CPU核心processes而定worker_processes 6;worker_cpu_affinity 000001 000010 000100 001000 010000 100000 ;<br><br>#啟用epollworker_rlimit_nofile 51200;events {  worker_connections 51200;  use epoll;}#參數調整sendfile on;tcp_nopush on;tcp_nodelay on;server_tokens off;keepalive_timeout 50;server_names_hash_bucket_size 128;client_header_buffer_size 32k;large_client_header_buffers 4 32k;client_max_body_size 50m;#fastcgi最佳化fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 4 64k;fastcgi_busy_buffers_size 128k;fastcgi_temp_file_write_size 256k;#開啟gzip並最佳化gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_http_version 1.0;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml;gzip_vary on;

設定開機啟動:

service nginx startchkconfig nginx on#安裝php,php-fpmyum install php php-fpm php-bcmatch php-gd php-mbstring php-mcrypt php-mysql

配置PHP指令碼的運行:

cp/etc/nginx/conf.d/default.conf etc/nginx/conf.d/default.confbakvim /etc/nginx/conf.d/default.conf

設定網站的預設目錄:#這裡php-fpm是採用監聽連接埠的方式,同一台機的話最好採用unix socket

#去除下面這段內容的注釋location ~ \.php$ {  root /home/www;  fastcgi_pass 127.0.0.1:9000;  fastcgi_index index.php;  fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;  include fastcgi_params;}#注意其中fastcgi_param行的參數,改為$document_root$fastcgi_script_name,或者使用絕對路徑

4. vsftpd配置

先配置iptables , vi /etc/sysconfig/iptables ,複製 --dport 22那行,粘貼改成21連接埠。儲存,重啟service iptables restart。

yum install vsftpd ftptouch /var/log/vsftpd.logservice vsftpd startchkconfig vsftpd onvim /etc/vsftpd/vsftpd.conf#修改相關參數如下:#設定不允許匿名訪問anonymous_enable=NO#設定本機使用者可以訪問。註:如使用虛擬宿主使用者,在該項目設定為NO的情況下所有虛擬使用者將無法訪問。local_enable=YES#使使用者不能離開主目錄,並制定檔案chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list#設定vsftpd的服務日誌儲存路徑。注意,該檔案預設不存在。必須要手動touch出來 ,前面步驟已經建立xferlog_file=/var/log/vsftpd.log#允許使用ASCII模式上傳和下載ascii_upload_enable=YESascii_download_enable=YES#PAM認證檔案名稱。PAM將根據/etc/pam.d/vsftpd進行認證pam_service_name=vsftpd#以下這些是關於Vsftpd虛擬使用者支援的重要CentOS FTP服務設定項目。預設vsftpd.conf中不包含這些設定項目,需要自己手動添加RHEL/CentOS FTP服務配置。#設定啟用虛擬使用者功能。guest_enable=YES#指定虛擬使用者的宿主使用者。-RHEL/CentOS中已經有內建的ftp使用者了guest_username=ftp#設定虛擬使用者個人vsftp的RHEL/CentOS FTP服務檔案存放路徑。存放虛擬使用者個性的CentOS FTP服務檔案(設定檔名=虛擬使用者名稱) user_config_dir=/etc/vsftpd/vuser_conftouch /etc/vsftpd/chroot_listecho ftp >> /etc/vsftpd/chroot_listyum install db4 db4-utilsvim /etc/vsftpd/vuser_passwd.txt

加入相應的使用者資訊,其中奇數行為你新增使用者的帳號,偶數行為密碼,不能有空格

username1
password1
username2
password2

儲存檔案退出,產生使用者認證的db檔案

db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.dbvim /etc/pam.d/vsftpd

用#注釋所有的內容,然後增加以下兩行內容:

auth required pam_userdb.so db=/etc/vsftpd/vuser_passwdaccount required pam_userdb.so db=/etc/vsftpd/vuser_passwd

儲存退出。再建立虛擬使用者的ftp服務檔案夾,以及前文中所增加的帳號使用者的設定檔

mkdir /etc/vsftpd/vuser_conf/vim /etc/vsftpd/vuser_conf/username1

填寫以下內容:

#username1使用者的根目錄(自己決定)local_root=/home/www/ftpwrite_enable=YESanon_umask=0anon_world_readable_only=NOanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES

儲存內容,退出。要建立上述設定檔中所設定的使用者根目錄,並為其設定許可權

mkdir /home/www/ftpchmod 777 /home/www/ftpservice vsftpd restart

ok

#有時候會出現,可以串連ftp,卻不能列出目錄,這個是iptable的連接埠問題。開啟PASV即可,vim /etc/vsftpd/vsftpd.conf

pasv_enable=YESpasv_min_port=9000pasv_max_port=9020

然後在iptables裡面加上這兩個連接埠,還是前面說的,yy一行22,再p一下,把22改成9000:9020;

還有可能是selinux的關機,

modprobe ip_nat_ftpservice iptables restart && service vsftpd restart

5. 安裝Mysql5.6

yum update#資料庫伺服器的安裝 , 請自行在mysql官方找最新的rpmrpm -Uvh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpmyum install mysql-server

安裝完成後記得運行

mysql_security_installation

遠端連線時,還要將mysql3306連接埠加入iptables,同樣使用前面的方法,複製一句22的,改成3306,重啟iptables即可。

配置mysql遠端連線:命令列使用root登入

mysql -uroot -puse mysql;update user set host = '%' where user = 'root';

另外可能的工作:

安裝phpMyAdmin

google phpMyAdmin找到在sourceforge的地址,然後在網站根目錄下wget下來。

解壓,重新命名目錄,進入目錄,

cp config.sample.inc.php config.inc.php

重啟nginx

注意這裡還得再改一下,瀏覽器進入phpmyadmin地址,可能會出現下面的錯誤:

Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.

需要將/var/lib/php/session的所有者改為nginx

chown -R nginx:nginx /var/lib/php/session

現在應該可以訪問了...

配置mysql遠端連線

因為管理需要,我們需要遠端連線一下mysql,以進行管理。安裝好phpmyadmin後,在使用者那裡可以選擇建立一個使用者,將主機設定為需要串連的主機ip或任意主機即可

自動掛載硬碟:

由於外置了一個硬碟,所以得配置開機自動掛載。vim /etc/fstab加入:

/dev/sdc /mnt/data auto defaults 0 0

centos網路設定:

IP設定 : /etc/sysconfig/network-scripts/ifcfg-eth0

網關設定: /etc/sysconfig/network

DNS設定: /etc/resolv.conf

重啟網路:

service network restart

關閉SELiinux

在後面的工作中,發現很多地方不方便,例如ftp無法上傳等問題,ssh遠程無法串連等,於是關閉SELinux,運行以下命令:

#/usr/sbin/setenforce 0#echo "usr/sbin/setenforce 0" >> /etc/rc.local

這樣就可以把關閉SELinux加入開機啟動。

希望本文所述對大家CentOS伺服器配置有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.