linux下載安裝composer和laravel5.8

軟件壓縮包目錄/data/Software
站點目錄/var/www

一、下載composer

1、下載安裝composer
wget -P /data/Software https://getcomposer.org/download/1.8.5/composer.phar
mv /data/Software/composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer

二、下載安裝laravel

1、下載laravel
wget -c https://github.com/laravel/laravel/archive/v5.8.17.zip -O /data/Software/laravel-5.8.17.zip
2、解壓
cd /data/Software
unzip laravel-5.8.17
3、放進站點
mv /data/Software/laravel-5.8.17 /var/www/laravel
4、如nginx沒有配置ssl模塊,到軟件解壓目錄,重新安裝ssl模塊
cd /data/Software/nginx-1.16.0
sudo ./configure --with-http_ssl_module
//只編譯不安裝注意!
sudo make
//備份nginx啓動程序
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
//替換nginx啓動程序
cp /data/Software/nginx-1.16.0objs/nginx /usr/local/nginx/sbin/nginx

systemctl restart nginx
5、檢查環境

laravel中文手冊
laravel官網
在這裏插入圖片描述
在這裏插入圖片描述

顯然我的php中不僅ssl拓展沒安裝,其他的也沒裝
6、安裝php拓展
//雖然相對路徑也可以,但還是在php.ini中更改成絕對路徑吧,你的文件名和我應該不同
extension_dir = "/etc/php7.2/lib/php/extensions/no-debug-non-zts-20170718/"

cd /data/Software/php-7.2.4/ext
ls

在這裏插入圖片描述

壓縮包中自帶有很多主流拓展包
安裝laravel需要用到bcmath、ctype、json、mbstring、openssl、pdo、tokenizer、xml
find / -name phpsize
//phpsize位置
/etc/php7.2/bin/phpsize

(1)bcmatch

cd /data/Software/php-7.2.4/ext/bcmath
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

在這裏插入圖片描述
在這裏插入圖片描述

後面的操作全部一樣

(2)ctype

cd /data/Software/php-7.2.4/ext/ctype
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(3)json

cd /data/Software/php-7.2.4/ext/json
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(4)mbstring

cd /data/Software/php-7.2.4/ext/mbstring
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(5)openssl

cd /data/Software/php-7.2.4/ext/openssl
/etc/php7.2/bin/phpize

在這裏插入圖片描述

出現問題:找不到config.m4,但其實是有的,把config0.m4改個名字
mv config0.m4 config.m4

/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(6)pdo

cd /data/Software/php-7.2.4/ext/pdo
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(7)tokenizer

cd /data/Software/php-7.2.4/ext/tokenizer
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean

(8)xml

cd /data/Software/php-7.2.4/ext/xml
/etc/php7.2/bin/phpize
./configure --prefix=/usr/local/
make && make install	
make clean
檢查下文件

在這裏插入圖片描述

7、關於開啓php拓展,使用phpsize安裝拓展都是內置php的,不需要手動引用“extension=xml.so“,所以直接重啓服務即可
//重啓下服務器
systemctl restart nginx
8、權限
//在www-data組中添加你的用戶
sudo usermod -a -G www-data '用戶名'

//更改www文件所屬用戶組和用戶名爲root組root用戶
sudo chown root:root /var/www

//更改www文件權限:文件所有者(root)可寫可讀可執行、同組不同用戶可讀可寫可執行('root組下')、其他組和用戶不可寫可讀可執行
sudo chmod 755 /var/www/

//更改項目及其下所有文件所屬用戶組和用戶名爲www-data
sudo chown -R www-data:www-data /var/www/‘項目名’
sudo chmod -R 775 /var/www/'項目名'

//重登用戶
su - '用戶名'
9、安裝laravel
//注意安裝智能在普通用戶下
cd /var/www/laravel
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer install

雖然是國內鏡像但下載速度也比較慢。。

安裝完成

在這裏插入圖片描述

三、測試

問題:顯示500錯誤

在這裏插入圖片描述

官網顯示nginx.conf需要改或加一句,意思是不管地址訪問哪裏都會跳轉到public下的index

location / {
 try_files $uri $uri/ /index.php?$query_string;
}

在這裏插入圖片描述

應該還有權限問題

在這裏插入圖片描述

//更改項目及其下所有文件所屬用戶組和用戶名爲www-data
sudo chown -R www-data:www-data /var/www/‘項目名’
sudo chmod -R 775 /var/www/'項目名'

//打開laravel的debug模式
vi /var/www/laravel/config/app.php
'debug' => env('APP_DEBUG', true),
打開debug後顯示logs日誌文件沒有寫入權限。。在這裏插入圖片描述
但實際www-data用戶是所有操作權限都有的。。

在這裏插入圖片描述

防止類似寫權限,直接給storage追加所有人寫權限吧
cd /var/www/laravel
//給全部用戶追加寫權限
chmod -R a+w storage

在這裏插入圖片描述

//複製環境變量配置文件,因爲是用composer安裝
cp -a .env.example .env
//生成一個隨機的 key,並自動更新到 ./laravel/.env的 APP_KEY 
php artisan key:generate

在這裏插入圖片描述
//PHP 內置的開發服務器啓動應用
php artisan serve

安裝完成!

在這裏插入圖片描述

laravel5.8官方手冊 https://laravel.com/docs/5.8/
laravel5.8中文手冊 https://learnku.com/docs/laravel/5.8/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章