#nginx #web #server #dns #vps
#nginx #веб #сервер #dns #vps
Вопрос:
Я хочу создать несколько сайтов в одном vps, например, сайты на порту 80 используютwww.domain1.com и на порту 8080 использовать www.domain2.com . может ли nginx или что-либо еще справиться с этим?
я пытался использовать переадресацию портов, но работает плохо
мой nginx.conf
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name domain1.com;
root /var/www/html;
# Load configuration files for the default server block.
#include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
# PHP
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
и мой virtualhost.conf
#Virual Host
server {
listen 8080;
access_log /var/log/nginx/nginx-access.log;
error_log /var/log/nginx/nginx-error.log;
# Root
root /var/www/web2/public;
index index.php index.html index.htm;
# server name
server_name domain2.com;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# PHP
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
если возможно, каким образом?
Ответ №1:
Вы можете запустить оба домена на порту 80. вам не нужно менять порт на 8080. В nginx.conf измените имя_сервера с domain1.com вернуться к default_server;
В вашем каталоге /etc /nginx/conf.d/ создайте два конфигурационных файла, domain1-com.conf и domain2-com.conf
donain1-com.conf
server {
listen 80;
server_name domain1.com www.domain1.com;
access_log /var/log/nginx/domain1-com-access.log;
error_log /var/log/nginx/domain1-com-error.log;
root /var/www/web1/public;
index index.php index.html index.htm;
# PHP
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
domain2-com.conf
server {
listen 80;
server_name domain2.com www.domain2.com;
access_log /var/log/nginx/domain2-com-access.log;
error_log /var/log/nginx/domain2-com-error.log;
root /var/www/web2/public;
index index.php index.html index.htm;
# PHP
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(. .php)(/. )$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}