標籤:軟體 預設 let deb ruby pca script 下界 composer
閱讀目錄
- 啟動nginx並設定為開機啟動
- 安裝iptables
- 編輯防火牆設定檔
- 配置nginx可以訪問php
- 測試訪問
- MariaDB的安全配置
- 讓外網可以進行連結
- 全域安裝composer
原文:http://blog.csdn.net/hel12he/article/details/51107236
前面已經把vagrant的基礎知識已經基本過了一遍 了,相信只要按著教程來,你已經搭建好了自己的基礎環境。接下來說一說如何搭建php7的開發環境。
申明一下,這裡使用的box,就是前面示範的centos7
地址奉上:
https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box
安裝nginx
首先需要跟新一些ngin的相關源。
$ rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm// 執行安裝過程$ yum install nginx
看到以下介面時,請稍等,如果需要輸入的地方,請直接按 y 然後斷行符號。
回到頂部啟動nginx並設定為開機啟動
$ systemctl start nginx $ systemctl enable nginx
安裝epel與remi源
安裝epel,epel是Fedora小組維護的一個軟體倉庫項目,為RHEL/CentOS提供他們預設不提供的軟體包。安裝時一定需要注意一下自己系統的版本額。
$ rpm -ivh http://mirrors.opencas.cn/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
remi源種包含最新的PHP相關資訊,如:php7、MySQL等,因此為了便捷擷取php7的最新資訊,也需要安裝一下這個源。
$ rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
iptables防火牆
因為以前經常使用iptables,對centos7內建的firewalld防火牆不熟悉,因此我就將關閉centos7內建的firewalld,啟用自己熟悉的iptables吧。
首先,關閉內建的firewalld防火牆
$ systemctl stop firewalld.service $ systemctl disable firewalld.service #防止開機啟動
回到頂部安裝iptables
$ yum install iptables-services
安裝進程如所示
啟動iptables防火牆
systemctl start iptables.service systemctl enable iptables.service #開機自動啟動
回到頂部編輯防火牆設定檔
為了我們在自己的主機上能夠順利訪問,需要開啟以下連接埠,
vim /etc/sysconfig/iptables
編輯防火牆,設定80(nginx) 3306(mysql/mariadb) 6379(Redis)連接埠,外網可訪問
PHP7.0的安裝
查看remi源中可安裝的php資訊
$ yum list --enablerepo=remi --enablerepo=remi-php70 | grep php70
該列表會列出所有可以安裝的php模組資訊,從中安裝自己需要的模組,下面安裝模組,是我自己的一個模組選擇情況。其中有一部分是必須的,有一部分是可選的。比如php-fpm就是必須的,如果你用的是nginx的話。
$ yum install --enablerepo=remi --enablerepo=remi-php70 php php-opcache php-pecl-apcu php-devel php-mbstring php-mcrypt php-mysqlnd php-pecl-xdebug php-pdo php-pear php-fpm php-cli php-xml php-bcmath php-process php-gd php-common php-json php-imap php-pecl-redis php-pecl-memcached php-pecl-mongodb
安裝完成後,輸入 php -v 可以查看當前安裝的php版本資訊。
啟動php-fpm,因為nginx需要通過它來解析php程式
$ systemctl start php-fpm$ systemctl enable php-fpm #設定開機自啟動
回到頂部配置nginx可以訪問php
進入nginx的檔案配置中心,
$ cd /etc/nginx/conf.d/# 複製預設的設定檔 $ cp default.conf php.conf
首先先通過vim編輯default檔案。將監聽連接埠改為8080, 因為後面我們自己的php.conf會用到80連接埠。
現在來編輯複製的php.conf檔案,可以直接複製以下內容,至於配置的含義,後面再開一篇文章來單獨講解吧。
server { listen 80; server_name localhost; charset utf-8; root /vagrant/www;# 自己的項目目錄,也就是php項目所在目錄 location / { # 請注意,一定要加index.php這項 index index.php index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; # 注意此處變數的不同 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }}
修改完檔案後,必須要重新啟動nginx,才會使當前的配置生效。
$ systemctl reload nginx
回到頂部測試訪問
在/vagrant/www下建立一個檔案index.php
<?php phpinfo();
在瀏覽器中開啟,訪問對應的ip,可以看到輸出的php資訊
註:如果在使用過程中,有新增加的php模組,需要重新啟動php-fpm
systemctl reload php-fpm
Mariadb的安裝
這裡很多同學可能第一次聽說mariadb,他呢是mysql的一個重要分子,或者可以理解為mysql的替代品,自從mysql被控制後,更新速度已經慢太多了。兩者的用法基本沒有區別,實際中有哪些坑,大家可以自己去踩一踩。哈哈,別說我不負責任。
# 安裝$ yum install mariadb-server# 啟動服務$ systemctl start mariadb# 開機啟動$ systemctl enable mariadb
回到頂部MariaDB的安全配置
MariaDB預設root密碼為空白,我們需要設定一下,執行指令碼:
$ sudo mysql_secure_installation
這個指令碼會經過一些列的互動問答來進行MariaDB的安全設定。
首先提示輸入當前的root密碼:
Enter current password for root (enter for none):
初始root密碼為空白,我們直接敲斷行符號進行下一步。
Set root password? [Y/n]
設定root密碼,預設選項為Yes,我們直接斷行符號,提示輸入密碼,在這裡設定您的MariaDB的root賬戶密碼。
Remove anonymous users? [Y/n]
是否移除匿名使用者,預設選項為Yes,建議按預設設定,斷行符號繼續。
Disallow root login remotely? [Y/n]
是否禁止root使用者遠程登入?如果您只在本機內訪問MariaDB,建議按預設設定,斷行符號繼續。 如果您還有其他雲主機需要使用root帳號訪問該資料庫,則需要選擇n。
Remove test database and access to it? [Y/n]
是否刪除測試用的資料庫和許可權? 建議按照預設設定,斷行符號繼續。
Reload privilege tables now? [Y/n]
是否重新載入許可權表?因為我們上面更新了root的密碼,這裡需要重新載入,斷行符號。
完成後你會看到Success!的提示,MariaDB的安全設定已經完成。我們可以使用以下命令登入MariaDB:
$ mysql -uroot -p
按提示輸入root密碼,就會進入MariaDB的互動介面,說明已經安裝成功。
最後我們將MariaDB設定為開機啟動。
$ sudo systemctl enable mariadb
回到頂部讓外網可以進行連結
mysql> grant all on *.* to ‘root‘@‘%‘ identified by ‘root‘;mysql> flush privileges;
安裝composer
composer的大名,我就不想介紹了,如果你是一個phper,沒用過,我也就不怪你,畢竟但是他現在才剛過1.0版,但是如果聽都沒聽過,請面壁去……
安裝說明
$ php -r “readfile(‘https://getcomposer.org/installer‘);” > composer-setup.php$ php composer-setup.php$ php -r “unlink(‘composer-setup.php’);”
上述 3 條命令的作用依次是:
- 下載安裝指令碼(composer-setup.php)到目前的目錄。
- 執行安裝過程。
- 刪除安裝指令碼 – composer-setup.php 。
回到頂部全域安裝composer
全域安裝是將 Composer 安裝到系統內容變數 PATH 所包含的路徑下面,然後就能夠在命令列視窗中直接執行 composer 命令了。
Mac 或 Linux 系統:開啟命令列視窗並執行如下命令將前面下載的 composer.phar 檔案移動到 /usr/local/bin/ 目錄下面:
$ sudo mv composer.phar /usr/local/bin/composer
然後執行:
composer -v
由於composer的包都在國外,這裡設定一下composer的配置,讓其每次運行時,都使用國內的包
$ composer config -g repo.packagist composer https://packagist.phpcomposer.com
查看composer的設定檔
vim /root/.composer/config.json
看到以上內容,表示配置成功!
至此,基本的php7環境搭建已經完成了。然後呢,下一次說一說用vagrant搭建redis吧。當然我不會僅僅只說redis的搭建額。到時候看啊吧!
vagrant系列教程(三):vagrant搭建的php7環境(轉)