۲ شعبان زاده
آلرت Only secure origins are allowed
جامعه پی اچ پی ایجاد شده در ۰۶ فروردین ۱۴۰۲

سلام . وقت بخیر .

من یک alert در صفحه 7map دارم . که به اینصورت است Geolocation error: Only secure origins are allowed (see: https://goo.gl/Y0ZkNV)..

این alert بدلیل اینکه از پروتکل ssl استفاده نمی‌کنم بوجود میاد .

خیلی سعی کردم که برای xampp گواهینامه ssl نصب کنم . از این سایت‌ها هم بعنوان جستجو استفاده کردم

https://support.pouyasazan.org/kb/a1585/ssl-localhost-xampp.aspx

https://www.webdesignvista.com/install-ssl-certificate-for-localhost-xampp-windows/

https://florianbrinkmann.com/en/https-virtual-hosts-xampp-4215/

https://robsnotebook.com/xampp-ssl-encrypt-passwords/

همچنین سعی کردم از openSSL برای نصب گواهینامه بر روی زمپ استفاده کنم . اما هر چه سعی کردم و جستجو کردم نتونستم نصبش کنم و در نتیجه توی لوکیشن من دائم alert بالا رو داره . حدود ۲ روز است که درگیرم و موفق نشدم .

چه راهکاری پیشنهاد می‌کنید . یا یک مرجعی که درست راهنمایی کنه .

خیلی درگیر تنظیمات آپاچی و زمپ شدم اما متاسفانه گیر کردم .

ممنون میشم راهنمایی کنید

سلام،

مشکلی که شما با آلرت Geolocation error: Only secure origins are allowed مواجه هستید به دلیل استفاده از پروتکل HTTP به جای HTTPS در صفحه شماست. برای حل این مشکل شما باید از پروتکل HTTPS برای صفحه خود استفاده کنید تا بتوانید از مکانیابی استفاده کنید.

برای اجرای HTTPS بر روی XAMPP، می‌توانید به دو روش اقدام کنید: نصب گواهی SSL واقعی یا نصب یک گواهی SSL رایگان.

برای نصب گواهی SSL واقعی، می‌توانید یک گواهی SSL را از یک هاستینگ خریداری کرده و پس از دریافت آن، آن را بر روی سرور XAMPP نصب کنید.

در صورتی که تمایلی به خرید و نصب یک گواهی SSL ندارید، می‌توانید یک گواهی SSL رایگان بسازید. برای ساخت گواهی SSL رایگان، می‌توانید از ابزار OpenSSL استفاده کنید. برای این کار مراحل زیر را دنبال کنید:

  1. ابتدا فایل OpenSSL را دانلود و نصب کنید.
  2. سپس دستورالعمل‌های مربوط به ساخت گواهی SSL خودساخته را با دستورالعمل زیر اجرا کنید:
openssl req -newkey rsa:2048 -nodes -keyout server.key -x509 -days 365 -out server.crt
  1. در این مرحله، فایل‌های server.crt و server.key را در پوشه SSLCertificates در دایرکتوری اصلی XAMPP قرار دهید.
  2. سپس به فایل httpd-ssl.conf که در دایرکتوری xampp/apache/conf/extra قرار دارد رفته و تنظیمات SSL را به شکل زیر تغییر دهید:
SSLCertificateFile "C:/xampp/apache/SSLCertificates/server.crt" 
SSLCertificateKeyFile "C:/xampp/apache/SSLCertificates/server.key"


اگر هم دنبال روش راحت و با یک کلیک هستید پیشنهاد میکنم بجای زمپ از لاراگون استفاده کنید تا این امکان و بسیاری امکان دیگه رو براتون فعال کنه.

بهترین پاسخ
احمدرضا فاطمی کیا ۰۶ فروردین ۱۴۰۲، ۲۱:۳۴

سلام مجدد احمد رضا جان . خیلی ممنون از راهنماییت

این سایت هم اطلاعات خوبی درباره نصب گواهینامه ssl در محیط لوکال (xampp) داره . برای دوستانی که با این مشکل روبرو میشن آدرس سایت رو می‌گذارم .

https://shellcreeper.com/how-to-create-valid-ssl-in-localhost-for-xampp/

در ضمن علاوه بر تنظیماتی که در سایت فوق راهنمایی کرده باید در مسیر فایل xampp/apache/conf/extera/httpd-ssl.conf دو پارامتر sslcertificatefile و sslcertificatekeyfile را پیدا کرد و از حالت کامنت درآورد و پس از آن بدرستی آدرس فایل‌های server.crt و server.key براشون ست کرد برای من به صورت زیر است :

SSLCertificateFile "crt/7learn.php/server.crt"

SSLCertificateKeyFile "crt/7learn.php/server.key"



شعبان زاده ۰۹ فروردین ۱۴۰۲، ۱۵:۵۹