阿里雲服務器部署php的laravel項目,在阿里雲買ECS 搭建 Linux+Nginx+Mysql+PHP環境的mysql
最近在學Laravel,同參考文章,原本只是在虛擬機上運行,但如今正好由於手上有騰訊雲的服務器,因此就直接拿來部署Laravel。nginx
首先作下準備工做laravel
sudo apt update
下面不是必要的,可是若是有開着apache2服務器的話,是必須作的sql
sudo service apache2 stop update-rc.d -f apache2 remove sudo apt-get remove apache2
sudo apt install nginx && sudo service nginx start
安裝完記得輸入服務器的公網地址若是有顯示apache
Welcome to nginx!ubuntu
就表示安裝成功了vim
sudo apt install mysql-server
期間要注意輸入帳號密碼服務器
sudo apt install phpo7.0-fpm php7.0-mcrypt
這裏我裝的是php7.0,這個在後面配置nginx的時候碰到了一個大坑,這裏先不說,等到配置nginx的時候詳細說明
sudo vi /etc/php/7.0/fpm/php.ini
找到cgi.fix_pathinfo
刪掉註釋,並將其值改成0
cgi.fix_pathinfo=0
啓用php7.0-mcrypt以及重啓php服務
sudo phpenmod mcrypt sudo service php7.0-fpm restart
nginx的配置文件在
/etc/nginx/sites-available/default
因此
sudo vim /etc/nginx/sites-available/default
這裏說下我遇到的坑,我找到的參考文章都是安裝的php5,然而我安裝的是php7.0,這裏致使了個人ngnix不能解析php文件,網站一直顯示502錯誤,花了我一夜的時間,廢話很少說,我把個人配置貼出來
server { listen 80 default_server; listen [::]:80 default_server; root /home/ubuntu/Code/Laravel/public; index index.php index.html index.htm index.nginx-debian.html; server_name servername or IP;# 這裏填寫服務器名或雲服務器的IP location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } access_log off; error_log /var/log/nginx/error.log error; location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
上面能夠看到我把個人網站根目錄改爲了Laravel項目的根目錄
最後
sudo service nginx restart
composer create-project laravel/laravel Laravel --prefer-dist "5.4.*"
若是不給網頁請求設置權限的話,就會顯示沒法訪問的錯誤
sudo chown -R :www-data /home/ubuntu/Code/Laravel sudo chmod -R 775 /home/ubuntu/Code/Laravel/storage
輸入你的公網地址,若是能顯示頁面就表示成功了