CentOS7下Laravel部署并用nginx转发
这篇文章介绍的内容是关于CentOS7下Laravel部署并用nginx转发,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
本文章仅作为个人笔记
搭建php运行环境
运行service php-fpm start启动php-fpm服务,运行ps aux | grep php-fpm验证是否成功安装php-fpm服务。
-
如果使用第二种方案安装源的,请用如下脚本
yum install php72-php-cli.x86_64 php72-php-common.x86_64 php72-php-fpm.x86_64 php72-php-devel.x86_64 php72-php-gd.x86_64 php72-php-intl.x86_64 php72-php-mbstring.x86_64 php72-php-pecl-mcrypt.x86_64 php72-php-mysqlnd.x86_64 php72-php-opcache.x86_64 php72-php-pdo.x86_64 php72-php-pear.noarch php72-php-xml.x86_64 -y
Salin selepas log masuk 有php源
-
也有可能有部分用户无法访问这两个文件,此时可以换用下面方式(7.2),因此后面的部分教程可能也会不一样,需注意
yum install epel-release -y rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
Salin selepas log masuk php源比较旧
php:
判断是否有php的yum源:
yum search php系统本身自带php的yum源,但是版本太旧,还是5.4的,为了安装最新的源这里准备安装新yum源。
安装php的yum源:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Salin selepas log masuk此时再运行 yum search php 会发现多出来更多选项
安装php及部分相关插件(php-cli为shell相关,php-common为常用函数相关,php-devel为编译相关,php-fpm为服务相关,php-gd为图片处理相关,php-intl为国际化相关,php-mbstring为多字符串处理相关,php-mcrypt为加密相关,php-mysqlnd为mysql相关,php-opcache为性能加速相关,php-pdo为数据对象相关,php-pear为php应用扩展相关,php-xml为xml相关)(这里安装php7.1)使用了第一种的请用第一个脚本:
yum install php71w-cli.x86_64 php71w-common.x86_64 php71w-fpm.x86_64 php71w-devel.x86_64 php71w-gd.x86_64 php71w-intl.x86_64 php71w-mbstring.x86_64 php71w-mcrypt.x86_64 php71w-mysqlnd.x86_64 php71w-opcache.x86_64 php71w-pdo.x86_64 php71w-pear.noarch php71w-xml.x86_64 -y运行php –version查看php是否安装并配置完成。出现与截图类似的版本信息则表示安装php配置完成,
php版本
php-fpm测试
安装周边服务(nginx/composer/git/mysql/redis)
这几个服务基本可以在基本yum源中安装,如果没有composer,可运行cd /tmp
curl –sShttps://getcomposer.org/installer| php
mv composer.phar/usr/local/bin/composer 即可完成composer的安装服务代码准备
为了方便php服务的部署和更新,笔者使用git进行项目下载及更新。
进入准备部署服务的文件夹,运行 git clone git地址(例:git clone root@www.temp.com:/git/php/markingphp)
下载php代码
此时项目权限为root,如果这样运行php-fpm可能会权限不足,笔者这里为了简便及对php项目静态资源nginx管理,将项目权限更改为nginx,并将php-fpm的运行者权限改为nginx。
php及项目相关配置
nginx错误日志
服务转发失败
初始化mysql
运行 chown nginx:nginx -Rf 文件夹名(例:chown nginx:nginx -Rf markingphp)
运行rpm -ql php17w-fpm.x86_64获取php-fpm安装地址
获取php-fpm安装地址
尝试得知 /etc/php-fpm.d/www.conf 为配置文件
php-fpm配置文件
更改user = apache与 group = pache 为 user = nginx group = nginx 如果有必要可以更改127.0.0.1:9000为想要的端口
为了服务器信息安全及项目大小控制,git项目未上传项目配置与项目引用库,所以需要重新新建项目配置文件并配置
项目结构
配置文件
运行 composer update -vvv 下载库
下载库失败
如果库下载失败,可能是库被墙的原因,更改composer.json添加国内源再运行即可。
国内源
再运行 php artisan serve 可测试当前项目库是否完整,出现如下说明项目库下载完成。
尝试启动项目测试
初始化项目mysql表(php artisan migrate:refresh)
配置nginx以转发80端口服务到php-fpm的服务,
运行curl localhost 判断服务是否正常转发。
运行 vim /var/log/nginx/error.log 检查nginx的log会发现log提示权限不足,可是我们已经把文件权限付给了nginx。
最终得知是因为selinux的缘故,此时只需运行 setenforce 0 即可关闭selinux(临时),再修改配置文件 /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,这样下次重启selinux依然是关闭的。再运行curl localhost 会发现服务已经可以正常服务了。
“repositories”: { “packagist”: { “type”: “composer”, “url”: “https://packagist.phpcomposer.com” } }
server { listen 80; location / { root /php/markingphp/public/; index index.php index.html index.jsp; } 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; } }
Atas ialah kandungan terperinci CentOS7下Laravel部署并用nginx转发. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Laravel adalah rangka kerja PHP untuk membina aplikasi web yang mudah. Ia menyediakan pelbagai ciri yang kuat termasuk: Pemasangan: Pasang Laravel CLI secara global dengan komposer dan buat aplikasi dalam direktori projek. Routing: Tentukan hubungan antara URL dan pengendali dalam laluan/web.php. Lihat: Buat pandangan dalam sumber/pandangan untuk menjadikan antara muka aplikasi. Integrasi Pangkalan Data: Menyediakan integrasi keluar-of-the-box dengan pangkalan data seperti MySQL dan menggunakan penghijrahan untuk membuat dan mengubah suai jadual. Model dan Pengawal: Model mewakili entiti pangkalan data dan proses pengawal permintaan HTTP.

Mahu mempelajari rangka kerja Laravel, tetapi tidak mengalami sumber atau tekanan ekonomi? Artikel ini memberikan anda pembelajaran percuma Laravel, mengajar anda cara menggunakan sumber seperti platform dalam talian, dokumen dan forum komuniti untuk meletakkan asas yang kukuh untuk perjalanan pembangunan PHP anda dari mula menguasai.

Dalam Panduan Pemilihan Versi Rangka Kerja Laravel untuk pemula, artikel ini menyelam ke dalam perbezaan versi Laravel, yang direka untuk membantu pemula dalam membuat pilihan yang tepat di antara banyak versi. Kami akan memberi tumpuan kepada ciri -ciri utama setiap pelepasan, membandingkan kebaikan dan keburukan mereka, dan memberikan nasihat yang berguna untuk membantu pemula memilih versi Laravel yang paling sesuai berdasarkan tahap kemahiran dan keperluan projek mereka. Bagi pemula, memilih versi Laravel yang sesuai adalah penting kerana ia dapat memberi kesan yang signifikan kepada keluk pembelajaran mereka dan pengalaman pembangunan keseluruhan.

Laravel menyediakan rangka kerja auth yang komprehensif untuk melaksanakan fungsi log masuk pengguna, termasuk: Menentukan model pengguna (model fasih), membuat borang log masuk (enjin templat bilah), menulis pengawal log masuk (mewarisi auth \ logincontroller) tajuk keselamatan. Di samping itu, rangka kerja AUTH juga menyediakan fungsi seperti menetapkan semula kata laluan, mendaftar dan mengesahkan e -mel. Untuk maklumat lanjut, sila rujuk dokumentasi Laravel: https://laravel.com/doc

Ringkasan Artikel: Artikel ini menyediakan arahan langkah demi langkah terperinci untuk membimbing pembaca tentang cara memasang rangka kerja Laravel dengan mudah. Laravel adalah rangka kerja PHP yang kuat yang mempercepat proses pembangunan aplikasi web. Tutorial ini merangkumi proses pemasangan dari keperluan sistem untuk mengkonfigurasi pangkalan data dan menyediakan penghalaan. Dengan mengikuti langkah -langkah ini, pembaca dapat dengan cepat dan cekap meletakkan asas yang kukuh untuk projek Laravel mereka.

Rangka kerja Laravel mempunyai kaedah terbina dalam untuk melihat nombor versi dengan mudah untuk memenuhi keperluan pemaju yang berbeza. Artikel ini akan meneroka kaedah ini, termasuk menggunakan alat baris perintah komposer, mengakses fail .Env, atau mendapatkan maklumat versi melalui kod PHP. Kaedah ini adalah penting untuk mengekalkan dan menguruskan versi aplikasi Laravel.

Laravel dan ThinkPHP adalah kerangka PHP yang popular dan mempunyai kelebihan dan kekurangan mereka sendiri dalam pembangunan. Artikel ini akan membandingkan kedua -dua kedalaman, menonjolkan seni bina, ciri, dan perbezaan prestasi mereka untuk membantu pemaju membuat pilihan yang tepat berdasarkan keperluan projek khusus mereka.

Laravel 8 menyediakan pilihan berikut untuk Pengoptimuman Prestasi: Konfigurasi Cache: Gunakan Redis ke Pemacu Cache, Fasad Cache, Pandangan Cache, dan Page Page. Pengoptimuman pangkalan data: Menetapkan pengindeksan, gunakan skop pertanyaan, dan gunakan hubungan fasih. Pengoptimuman JavaScript dan CSS: Gunakan Kawalan Versi, Gabungan dan Secrink Aset, Gunakan CDN. Pengoptimuman kod: Gunakan pakej pemasangan komposer, gunakan fungsi pembantu Laravel, dan ikuti piawaian PSR. Pemantauan dan Analisis: Gunakan Pengakap Laravel, gunakan teleskop, memantau metrik aplikasi.
