Я работаю над несколькими проектами php и хочу развернуть эти проекты на одном веб-сервере NGINX (с тем же именем) с другим псевдонимом. Например: http: // localhost / project1, http: // localhost / project2
. Я думал, что если добавить несколько конфигураций в sites-avaible и enabled, будет достаточно, но это не работает. Еще я хочу, чтобы конфиги были в отдельных файлах, если это возможно. Эти конфиги по отдельности работают нормально.
Вот мои конфиги. Информационная страница php:
server {
listen 80;
root /var/www/html/;
index index.php index.html index.htm index.nginx-debian.html;
server_name localhost;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~* .(ico|jpg|webp|jpeg|gif|css|png|js|ico|bmp|zip|woff)$ {
access_log off;
log_not_found off;
add_header Pragma public;
add_header Cache-Control "public";
expires 14d;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
site1:
server {
listen 80;
root /var/www/html/site1/app/webroot;
index index.php index.html index.htm index.nginx-debian.html;
server_name localhost/site1;
location /crade_web {
try_files $uri $uri/ /index.php?$args;
}
location ~* .(ico|jpg|webp|jpeg|gif|css|png|js|ico|bmp|zip|woff)$ {
access_log off;
log_not_found off;
add_header Pragma public;
add_header Cache-Control "public";
expires 14d;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
ಸರ್ವರ್_ಹೆಸರು
ಆತಿಥೇಯ ಹೆಸರು ಆದ್ದರಿಂದ ಅದು ಲೋಕಲ್ ಹೋಸ್ಟ್ / ಸೈಟ್ 1
ಆಗಿರಬಾರದು.
ನಿಮ್ಮ ಎಲ್ಲಾ ಯೋಜನೆಗಳನ್ನು ಪ್ರತ್ಯೇಕ ಸಬ್ಫೋಲ್ಡರ್ಗಳಲ್ಲಿ ಇರಿಸಿದರೆ ನೀವು ಮಾಡಬೇಕಾಗಿಲ್ಲ ವಿಭಿನ್ನ ಸರ್ವರ್ ರಚಿಸಿ. ಅಂದರೆ. nginx ದೃಷ್ಟಿಕೋನದಿಂದ ನೀವು ಕೇವಲ ಒಂದು ಸೈಟ್ ಅನ್ನು ಹೊಂದಿದ್ದೀರಿ.
ನೀವು ವಿಭಿನ್ನ ಸೈಟ್ಗಳನ್ನು ರಚಿಸಲು ಬಯಸಿದರೆ ನೀವು ವಿಭಿನ್ನ ಸರ್ವರ್ ಹೆಸರುಗಳನ್ನು ನೀಡಲು ಬಯಸಬಹುದು, ಉದಾ.
myproject1.local
myproject2.local
myotherproject.local
ಮನಸ್ಸಿನಲ್ಲಿಟ್ಟುಕೊಳ್ಳಿ, ಆ ಎಲ್ಲ ಹೆಸರನ್ನು 127.0.0.1 ಗೆ ಪರಿಹರಿಸಲು ನಿಮ್ಮ ಹೋಸ್ಟ್ಗಳನ್ನು
ಫೈಲ್ ಅನ್ನು ನೀವು ಸಂಪಾದಿಸಬೇಕಾಗುತ್ತದೆ.