其實在openshift上安裝Nginx+MYSQL+PHP5.4不難,只要幾個指令就好了。 先新增一個應用,選擇最底下「Do-It-Yourself 0.1」
然後從openshift的控制面板安裝mysql
安裝完記得把用戶名和密碼還有ip記下來!
來看看OpenShift的環境變數吧,在ssh輸入:
1 | env |
安裝Nginx:
1 2 3 4 5 6 7 8 9 10 | cd $OPENSHIFT_DATA_DIR wget http://nginx.org/download/nginx-1.6.2.tar.gz tar zxf nginx-1.6.2.tar.gz wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz tar zxf pcre-8.36.tar.gz mkdir nginx cd nginx-1.6.2 ./configure --with-pcre=$OPENSHIFT_DATA_DIR/pcre-8.36 --prefix=$OPENSHIFT_DATA_DIR/nginx --with-http_realip_module make make install |
nginx安裝完成,需要編輯 $OPENSHIFT_DATA_DIR/nginx/conf/nginx.conf。
主要是listen的部分
1 2 3 4 5 6 7 8 | http { … server { listen 127.7.192.129:8080; … } … } |
其中127.7.192.129應替換為環境變數的OPENSHIFT_DIY_IP
安裝PHP:
1 2 3 4 5 6 7 8 9 | cd $OPENSHIFT_DATA_DIR wget http://us1.php.net/distributions/php-5.6.4.tar.gz tar zxf php-5.6.4.tar.gz mkdir PHP5.6 cd php-5.6.4 ./configure --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --prefix=$OPENSHIFT_DATA_DIR/PHP5.6 --enable-fpm --with-zlib --enable-xml --enable-bcmath --with-curl --with-gd --enable-zip --enable-mbstring --enable-sockets --enable-ftp make make install cp $OPENSHIFT_DATA_DIR/php-5.6.4/php.ini-production $OPENSHIFT_DATA_DIR/PHP5.6/lib/php.ini |
同要需要設置,編輯 $OPENSHIFT_DATA_DIR/php5.4/etc/php-fpm.conf 搜尋 listen
1 | listen =127.0.0.1:9000 |
把ip改成環境變數的OPENSHIFT_DIY_IP 把port改成 25641 然後把
1 2 | user = nobody group = nobody |
註解掉改成
1 2 | ;user = nobody ;group = nobody |
然後編輯 $OPENSHIFT_DATA_DIR/nginx/conf/nginx.conf
1 2 3 4 5 6 7 | #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # include fastcgi_params; #} |
取消註解改成
1 2 3 4 5 6 7 | location ~ \.php$ { root $OPENSHIFT_DATA_DIR/nginx/html; fastcgi_pass $OPENSHIFT_DIY_IP:25641; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } |
Nginx+MYSQL+PHP5.6已經安裝完成了,只需最後一個步驟就完成了。 編輯 $OPENSHIFT_REPO_DIR$/.openshift/action_hooks/start 把全部都刪除,然後加上:
1 2 | $OPENSHIFT_DATA_DIR/nginx/sbin/nginx $OPENSHIFT_DATA_DIR/php5.6/sbin/php-fpm |
編輯 $OPENSHIFT_REPO_DIR$/.openshift/action_hooks/stop 加上:
1 2 | killall nginx killall php-fpm |
恭喜,全部完成了喔。