이 글은 주로 Laravel을 클라우드 서버에 배포하는 방법을 자세히 소개하고 있습니다. 참고할만한 가치가 있으니 관심 있는 친구들은 참고하시면 됩니다.
PHP와 Laravel을 한동안 배웠는데 코드가 모두 실행 중이었습니다. 로컬 가상 호스트라서 Tencent Cloud에 가서 한 달 동안 무료 클라우드 호스트를 신청했고, 프로젝트를 클라우드 서버에 배포하고 싶었습니다.
여기에는 함정이 많다고 해야 할까요. 서버에 처음 접하는 초보자인 저는 혼란스럽습니다. 서버를 구성한 후에는 라라벨 프로젝트를 배포하는 것이 더욱 어렵기 때문에 라라벨 프로젝트를 배포하는 과정을 기록하고 싶었습니다.
PS: Linux는 정말 사용하면 할수록 더욱 즐거워지는 시스템입니다. 집에 갈 때 코딩을 위해 데스크톱 컴퓨터에도 Linux를 설치해야 합니다.
환경 소개
운영 체제 선택 측면에서 저는 Linux ubuntu16.04 시스템을 선택했고, Linux + Nginx + Mysql + PHP 환경인 LNMP 환경을 사용했습니다.
Apache 삭제
sudo service apache2 stop update-rc.d -f apache2 remove sudo apt-get remove apache2
먼저 이 세 가지 명령을 사용하여 Apaceh를 삭제한 다음 패키지 목록을 업데이트하세요
sudo apt-get update
1. Nginx를 설치하세요
sudo apt-get install nginx
Nginx를 설치한 후 nginx를 다시 시작하세요
sudo service nginx start
실행 후 public을 입력하세요. 브라우저에 클라우드 서버가 할당한 IP가 있으며 nginx 인터페이스에 오신 것을 환영합니다
2가 표시됩니다. Mysql
sudo apt-get install mysql-server mysql-client
을 설치하는 동안 평소와 마찬가지로 MySQL 비밀번호를 설정하라는 메시지가 표시됩니다. 비밀번호 설정은 동일하므로 한 번 입력하고 한 번 확인하세요. 비밀번호를 확인한 후 기본적으로 설치에 시간이 걸립니다.
mysql -u root -p
로그인에 성공했다면 MySQL이 제대로 설치된 것입니다.
3. PHP 설치
sudo apt-get install php5-fpm php5-cli php5-mcrypt
php5-fpm을 통해서만 Nginx에서 PHP가 정상적으로 실행되므로 설치해 주세요.
php5-mcrypt의 경우 Laravel과 같은 일부 PHP 프레임워크가 이에 의존하므로 이것도 설치됩니다.
주제에서 벗어나, 여기서 php5의 경우 배포 중에 php7을 직접 설치해 보고 싶으시다면 시도해 볼 수도 있습니다.
4. PHP 구성
sudo vim /etc/php5/fpm/php.ini
PHP구성 파일을 열고, cgi.fix_pathinfo 옵션을 찾아 앞에 있는 주석 세미콜론을 제거한 후 다음과 같이 값을 0으로 설정하세요.
5. php5-mcrypt 활성화:
cgi.fix_pathinfo=0
6. php5-fpm을 다시 시작합니다:
sudo php5enmod mcrypt
Nginx의 기본 루트 폴더
를 확인해야 합니다. code>/usr/share/nginx/html/usr/share/nginx/html
Nginx的服务器配置文件所在目录
/etc/nginx/sites-available/
上面两个目录记住就好,很常用,先摆出来
下面一步一步在云服务器上部署Laravel
1.创建网站的根目录
sudo service php5-fpm restart
2.配置nginx服务器
sudo mkdir -p /var/www
打开nginx的配置文件之后,找到server这一块,大概是长这个样子的
sudo vim /etc/nginx/sites-available/default
其中root,index ,server_name和location这几行需要稍微修改一下
root修改
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /usr/share/nginx/html; index index.html index.htm; server_name localhost; location / { try_files $uri $uri/ =404; } }
这里就是将nginx服务器的根目录指向Laravel的public文件夹下,后续的Laravel项目的代码我们会放在我们之前创建的/var/www/laravel目录下
index修改
root /var/www/laravel/public;
这里需要注意的是,将index.php排在最前面
server_name修改
index index.php index.html index.htm;
将server_domain_or_IP修改为你的公网IP
location修改
server_name server_domain_or_IP;
修改完是这样的:
location / { try_files $uri $uri/ /index.php?$query_string; }
最后我们还需要配置一下Nginx,让其执行PHP文件。同样是在这个文件里,在location下方添加下面的配置:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } }
注意,最下面的location ~ .php$
Nginx의 서버 구성 파일이 있는 디렉터리
/etc/nginx/sites-available/
기억하세요 위의 두 디렉터리입니다. 매우 일반적으로 사용되는 디렉터리이므로 먼저 배치해 보겠습니다
다음은 클라우드 서버에 Laravel을 단계별로 배포하는 방법입니다.1. 웹사이트의 루트 디렉터리를 만듭니다server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/laravel/public; index index.php index.html index.htm; server_name server_domain_or_IP; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
sudo service nginx restart
nginx 구성 파일을 연 후 다음과 같은 서버 섹션을 찾습니다.
cd ~ curl -sS getcomposer.org/installer | php
루트, 인덱스, 서버 이름 및 위치 행을 약간 수정해야 합니다
루트 수정sudo mv composer.phar /usr/local/bin/composer
여기서는 nginx 서버의 루트 디렉터리를 Laravel의 공용 폴더에 지정하는 것입니다. 이전에 만든 /var/www/laravel 디렉터리
index 수정
sudo composer create-project laravel/laravel laravel
여기서 주목해야 할 점은 index.php를 맨 앞에 넣는 것입니다
server_name 수정
scp -r laravel root@your_IP:
sudo mv laravel/ /var/www
sudo apt-get install git
git clone your-project-git-link
location ~ .php$
는 직접 추가했습니다. 🎜🎜구성이 완료된 후 Nginx를 다시 시작하고 위의 내용을 사용합니다. 구성 항목이 적용됩니다. 🎜rrreee🎜🎜3. Laravel 프로젝트 만들기🎜🎜🎜nginx를 구성한 후 🎜Laravel🎜 프로젝트 코드를 얻는 방법은 무엇인가요? 여러 가지 방법이 있습니다: 🎜🎜 (1) 작곡가를 직접 설치 🎜🎜 서버에서 🎜rrreee🎜를 실행할 수 있습니다. 위 명령은 전역 사용을 위해 작곡가 🎜🎜컴포저를 설치합니다. var/www 디렉토리에서 직접 실행🎜rrreee🎜 앞서 /var/www 디렉토리를 생성해두었기 때문에 /var/www를 직접 cd한 후 위의 명령어를 실행하시면 됩니다. 그런 다음 설치가 완료될 때까지 기다립니다. 🎜🎜🎜(2) 코드를 직접 업로드하세요🎜🎜🎜다음 명령을 사용하여 업로드하세요🎜rrreee🎜그런 다음 laravel을 서버의 /var/www 디렉토리로 옮깁니다🎜rrreee🎜🎜(3). 🎜🎜 개인적으로 저는 코드를 쉽게 업데이트하고 롤백할 수 있는 git을 사용하는 것을 선호합니다. 버전이 업데이트되고 버그가 발생하면 Git의 강력한 버전 관리 기능을 사용하여 버그를 수정할 수 있습니다. 프로세스는 대략 다음과 같습니다: 🎜🎜로컬 코드---->Github---->클라우드 서버🎜🎜既然要使用git,那么先在云服务器上安装git:
sudo apt-get install git
安装完成就可以使用git了,然后在Github上创建一个私有项目laravel,里面包含所有该Laravel项目所需代码。
一旦本地代码都推送到Coding,然后在/var/www目录下直接使用
git clone your-project-git-link
your-project-git-link替换为你Github上的laravel项目地址
5.BINGO
在浏览器输入:server_domain_or_IP
至此,你可以在服务器上随意地用Laravel了,keep coding!
위 내용은 클라우드 서버에 Laravel을 배포하는 예제 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!