setup php website with nginx role
This commit is contained in:
5
roles/website/defaults/main.yml
Normal file
5
roles/website/defaults/main.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
# defaults/main.yml
|
||||
# define default variable values here
|
||||
|
||||
server_port: 80
|
||||
7
roles/website/meta/main.yml
Normal file
7
roles/website/meta/main.yml
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
# meta/main.yml
|
||||
# define dependancies here
|
||||
|
||||
dependencies:
|
||||
- {role: nginx }
|
||||
- {role: php-fpm}
|
||||
20
roles/website/tasks/main.yml
Normal file
20
roles/website/tasks/main.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
|
||||
#setup a named webserver on a host
|
||||
|
||||
- name: create symlink
|
||||
file: state=link src="{{ repo }}" dest="{{ server_root }}"
|
||||
|
||||
|
||||
- name: create nginx vhost
|
||||
template: src=nginx.conf.j2 dest=/etc/nginx/sites-available/{{ server_hostname }}.conf
|
||||
notify:
|
||||
- reload nginx
|
||||
|
||||
- name: activate nginx vhost
|
||||
file: state=link src=/etc/nginx/sites-available/{{ server_hostname }}.conf dest=/etc/nginx/sites-enabled/{{ server_hostname }}.conf
|
||||
notify:
|
||||
- reload nginx
|
||||
|
||||
- name: update host file
|
||||
lineinfile: dest=/etc/hosts line='127.0.0.1 {{ server_hostname }}' owner=root group=root mode=0644
|
||||
26
roles/website/templates/nginx.conf.j2
Normal file
26
roles/website/templates/nginx.conf.j2
Normal file
@@ -0,0 +1,26 @@
|
||||
server {
|
||||
listen {{ server_port }};
|
||||
server_name {{ server_hostname }};
|
||||
root {{ server_root }}/public;
|
||||
|
||||
access_log /var/log/nginx/{{ server_hostname }}_access.log;
|
||||
error_log /var/log/nginx/{{ server_hostname }}_error.log;
|
||||
|
||||
index index.php index.html
|
||||
|
||||
error_page 404 /404.html;
|
||||
error_page 500 502 503 504 /50x.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
try_files $uri =404;
|
||||
fastcgi_pass unix:/var/run/php5-fpm.sock;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user