更新歷史php
Laravel 是一套簡潔、優雅的 PHP Web 開發框架。它可讓你從麪條同樣雜亂的代碼中解脫出來;它能夠幫你構建一個完美的 web APP,並且每行代碼均可以簡潔、富於表達力。html
因爲默認的 yum 源 php 版本低於 Laravel 要求,因此須要添加第三方源:前端
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安裝 nginx、php 及相關依賴:mysql
yum -y install nginx mariadb-server php70w php70w-fpm php70w-mysql php70w-mcrypt php70w-dom php70w-mbstring
配置 Mariadb(MySQL)nginx
使用如下命令啓動 mysql 並設爲開啓啓動:laravel
systemctl start mariadb systemctl enable mariadb
首次啓用 mysql 時,咱們須要執行如下指令進行配置:web
mysql_secure_installation
過程當中除下圖中兩次 輸入及確認密碼 外,一路按回車鍵選擇默認值便可。sql
Composer 是 php 的依賴管理工具,咱們將使用它下載 Laravel 安裝包。apache
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
設置環境變量,只有這樣安裝後系統才能找到 laravel 的執行文件:bootstrap
export PATH=$PATH:/root/.config/composer/vendor/bin
爲了不 composer 安裝應用過程當中出現內存不足的問題,咱們預先設置一下 swap [?]:
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024 /sbin/mkswap /var/swap.1 /sbin/swapon /var/swap.1
Swap 分區在系統的物理內存不夠用的時候,把硬盤空間中的一部分空間釋放出來,以供當前運行的程序使用。
使用 Composer 安裝 Laravel:
composer global require "laravel/installer"
進入 /home 目錄,咱們建立一個 laravel 項目,命名爲 blog:
cd /home laravel new blog
點擊 /home/blog 可查看項目結構。
進入 blog 項目,使用 composer update --no-scripts 更新項目依賴:
cd blog composer update --no-scripts
爲了運行 Laravel,咱們須要爲一些項目目錄配置權限:
sudo chmod 775 /home/blog/storage sudo chmod 775 /home/blog/bootstrap/cache
查看 blog 目錄下是否包含 .env 文件,若是不存在,則右擊 .env.example 文件,將其重命名爲 .env。
咱們使用如下命令來生成一串密鑰:
php artisan key:generate
執行後會獲得以下輸出:
Application key [...] set successfully.
打開 /config/app.php,找到以下一行:
'key' => env('APP_KEY'),
將生成的密鑰填入(中括號中部分):
'key' => env('APP_KEY', '...'),
在 blog 目錄下,咱們使用下面命令來啓用 開發服務器 測試訪問:
sudo php artisan serve --host=0.0.0.0 --port=80
接着,咱們能夠打開 http://<您的 CVM IP 地址> 測試訪問。
上面的 serve Artisan 命令通常只用於本地開發,而生產環境中咱們須要使用 Web 服務器,這裏咱們選用了 nginx。
首先咱們先按 Ctrl + C 中止掉剛剛的 serve。
在 nginx 中,咱們經過 php-fpm 來調用 php,經過下面命令啓動 php-fpm:
systemctl start php-fpm systemctl enable php-fpm
可使用下面的命令查看 php-fpm 是否啓動 [?]:
netstat -nlpt | grep php-fpm
php-fpm 默認監聽 9000 端口
打開 /etc/nginx/nginx.conf,備註或移除以下內容:
server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; ... error_page 500 502 503 504 /50x.html; location = /50x.html { } }
在 /etc/nginx/conf.d 目錄下 建立 php.conf,而後在該文件中添加以下內容:
server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /home/blog/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$query_string; } 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; } }
systemctl start nginx systemctl enable nginx
咱們能夠打開 http:// <您的 CVM IP 地址> 測試訪問。
接下來就是配置apache的時候了,Apache 和 Nginx 能夠二選一
安裝指令:
sudo apt-get install apache2
啓動命令:
service apache2 start // 開啓 service apache2 stop // 關閉 service apache2 restart // 重啓
/etc/apache2/apache2.conf
在配置文件中加入如下路由轉發設置
<Directory /var/www/項目目錄/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
/etc/apache2/sites-enabled/000-default.conf
編輯 000-default.conf 或新建一個配置文件,修改網站的根目錄:
DocumentRoot /var/www/項目目錄/public
service apache2 restart
大功告成,咱們能夠打開 http:// <您的 CVM IP 地址> 測試訪問。