У меня проблема, которую я не мог решить почти 2 месяца. Я настроил:
A
запишите и укажите его на IP-адрес.Адрес моего экземпляра GCE ... Я думаю, что моя конфигурация Nginx в порядке. Моя проблема в том, что когда я посещаю URL своего сайта, он показывает IP-адрес, а не mysubdomain.example.com
. Я не хочу, чтобы отображался мой IP-адрес. Я хочу, чтобы имя поддомена в URL-адресе отображалось в браузере. Я сомневаюсь, что .htaccess
моего приложения laravel, которое заставляет IP-адрес всегда отображаться в URL-адресе.
В учетной записи Go Daddy я создаю это в управлении DNS.
type=A,
Host=mysubdomain,
Point to=i.p address,
ttl=1.
также ниже есть раздел переадресации в субдомене, я нажимаю кнопку добавления, я ввожу свой субдомен, пересылаю http: //i.p адрес, тип пересылки = постоянный (301), настройки = только пересылка
Это конфигурация Nginx на моем сервере GCE
server {
listen 80;
listen [::]:80;
root /var/www/pro1/public/;
# Add index.php to the list if you are using PHP
index index.php index.html index.htm;
server_name mysubdomain.example.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ /index.php?$query_string;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
также ниже есть раздел переадресации в субдомене, я нажимаю кнопку добавления, я ввожу свой субдомен, пересылаю
http://i.p
адрес, тип пересылки = постоянный (301), настройки = только пересылка
Это проблема. Вам не нужен внешнее перенаправление когда вы уже настроили A
запись! Это разные вещи.
(Хотя с записью A (на внешний сервер) вы не обязательно ожидаете увидеть перенаправление - но это, вероятно, связано с реализацией GoDaddy?)
Удалите редирект («раздел переадресации»).
Вам нужно будет очистить кеш браузера, поскольку ошибочное (постоянное) перенаправление 301 будет жестко кэшировано браузером (это то же самое для любого пользователя, посетившего ваш сайт).
Действительно, это должно быть перенаправление на уровне приложения Laravel. Никакие правила nginx не делают этого, и ... вы, кажется, сбиты с толку; nginx не заботится о файлах .htaccess. Взгляни на этот, например.