1. 程式人生 > >剛買了個阿里ECS雲主機,一邊折騰一邊記錄,備忘

剛買了個阿里ECS雲主機,一邊折騰一邊記錄,備忘

安裝mysql

因為用的CentOS 7.2 64位版本,預設沒有mysql安裝源

先下載:

# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

安裝:

rpm -ivh mysql-community-release-el7-5.noarch.rpm

安裝這個包後,會獲得兩個mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

這時候再執行yum list mysql,結果如下,
Loaded plugins: fastestmirror
mysql-connectors-community                               | 2.5 kB     00:00
mysql-tools-community                                    | 2.5 kB     00:00
mysql56-community                                        | 2.5 kB     00:00
(1/3): mysql-tools-community/x86_64/primary_db             |  37 kB   00:00
(2/3): mysql-connectors-community/x86_64/primary_db        |  16 kB   00:00
(3/3): mysql56-community/x86_64/primary_db                 | 184 kB   00:00
Loading mirror speeds from cached hostfile
Error: No matching Packages to list

已經有安裝源了

安裝:

yum install mysql-server

安裝Apache

yum install httpd

安裝php

yum install php

不過這樣安裝的會有問題,無法使得apache執行時mysql模組被載入

需要執行下面的安裝

yum install php-mysql

搭建Ftp檔案服務

yum install vsftpd

連線ftp伺服器需要給Linux新增一個使用者,不能用root使用者直接連

需要注意的是,從外部連結ftp埠或者mysql的服務埠,都需要在ECS的管理裡配置相應安全規則,把埠開放

解決訪問Forbidden的問題,一般用新建的使用者連線ftp,檔案傳到此使用者目錄下,但是httpd服務可能沒有許可權訪問這些目錄下的檔案,需要授權使用

chmod 777 '需要授權的目錄'

根據自己的需要賦予適當的許可權

如果目錄授權後還不能訪問,再看看/etc/php.ini的配置檔案,裡面是否設定被拒絕訪問了,具體可以百度一下Apache Forbidden的問題,會有一堆解決方案的。

Apache虛擬主機的實現

在:/etc/httpd/conf.d目錄下,可以新建一個my-vhost.conf的檔案,在裡面進行虛擬主機的配置,因為httpd.conf的主配置檔案已經引導httpd服務自動載入/etc/httpd/conf.d/目錄下的conf檔案了,這樣獨立性比較好

子域名網站的實現,一種可以通過配置獨立的虛擬主機來實現,另外一種可以通過urlRewrier來實現,根據自己的需要來配置


關於Zend Optimazer,php 5.4.16版本需要下載對應的版本(64位的還是32位的,需要Zend Guard 6.0版本來進行編碼,它支援php5.3和php5.4,伺服器需要Zend Optimazer Loader來進行解碼,需要注意的是,編碼與解碼需要版本對應,不然伺服器無法解碼, Zend Guard 7.0 支援php5.5 和php 5.6

下載對應的Zend解碼器後,需要在/etc/php.d/目錄下新建一個檔案,比如Zend.ini,然後在裡面新增Zend模組和引數的配置:

[Zend Guard]
zend_extension=/usr/local/zend/ZendGuardLoader.so
; Enables loading encoded scripts. The default value is On
zend_loader.enable=1
; Optional: following lines can be added your php.ini file for ZendGuardLoader configuration
zend_loader.disable_licensing=0
zend_loader.obfuscation_level_support=3
zend_loader.license_path=

因為/etc/php.ini配置檔案裡引導php模組載入時到/etc/php.d/目錄裡掃瞄ini檔案,並載入進來

這樣基本上一個Apache+php+mysql的執行環境就算搭建起來了。

阿里的ECS還是比較有良心的,像埠可以自己設定開啟(25埠除外,需要申請),之前在美橙買了一個,443埠要開啟好像還要500的開通費,暈菜,用來做微信小程式的開發,必須要https服務,在阿里雲可以申請免費的CA證書,根據阿里雲裡的幫助文件,就可以設定了(如果設定虛擬主機,比如我的my-vhost.conf檔案裡,新增配置和修改搞定)

https服務CA證書是否符合微信小程式的要求,這裡有一個可以檢查的網站:

https://cryptoreport.geotrust.com/checker/views/certCheck.jsp