htaccess Access-Control-Allow-Origin
Tworzę skrypt, który ładuje się zewnętrznie na innych stronach. Ładuje CSS i HTML i działa dobrze na moich własnych serwerach.
Jednak, gdy próbuję go na innej stronie wyświetla ten okropny błąd:
Access-Control-Allow-Origin
Tutaj widać, że ładuje się idealnie: http://tzook.info/bot/
Ale na tej drugiej stronie pokazuje błąd: http://cantloseweight.co/robot/
Załadowałem skrypt ładowania do jsfiddle: http://jsfiddle.net/TL5LK/
Próbowałem edytować plik htaccess tak:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin *
</IfModule>
Lub w ten sposób:
Header set Access-Control-Allow-Origin *
Ale nadal nie działa. 8 answers
Spróbuj tego w .htaccess zewnętrznego folderu głównego:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
I jeśli to tylko dotyczy .Skrypty js powinieneś zawinąć powyższy kod wewnątrz tego:
<FilesMatch "\.(js)$">
...
</FilesMatch>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-14 00:40:09
Nikt nie mówi, że musisz również mieć mod_headers włączone, więc jeśli nadal nie działa, spróbuj tego:
(poniższe wskazówki działają na Ubuntu, Nie wiem o innych dystrybucjach)
Możesz sprawdzić listę załadowanych modułów za pomocą
apache2ctl -M
Aby włączyć mod_headers możesz użyć
a2enmod headers
Oczywiście po jakichkolwiek zmianach w Apache ' u trzeba go zrestartować:
/etc/init.d/apache2 restart
Wtedy możesz użyć
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
I jeśli mod_headers nie jest aktywny, ta linia nie zrobi nic w wszystkie. Możesz spróbować pominąć klauzulę if I po prostu dodać Header set Access-Control-Allow-Origin "*"
do konfiguratora, wtedy powinien pojawić się błąd podczas startu, jeśli mod_headers nie jest aktywny.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-02 15:22:06
Z mojego doświadczenia;
If it doesn ' t work from within php
do this in .htaccess
it worked for me
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin http://www.vknyvz.com
Header set Access-Control-Allow-Credentials true
</IfModule>
- poświadczenia mogą być prawdziwe lub fałszywe w zależności od param żądania ajax
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-14 15:06:24
Dodaj plik .htaccess
z następującymi dyrektywami do folderu czcionek, jeśli masz problemy z dostępem do czcionek. Można łatwo modyfikować do użycia z .css lub .Pliki js.
<FilesMatch "\.(eot|ttf|otf|woff)">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-07 03:21:08
W Zend Framework 2.0 miałem taki problem. Można rozwiązać na dwa sposoby .htaccess lub php header wolę .htaccess więc zmodyfikowałem .htaccess from:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Do
RewriteEngine On
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
I zaczyna działać
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-13 05:40:39
Inne odpowiedzi nie zadziałały dla mnie, to właśnie ostatecznie zrobiło sztuczkę dla apache2:
1) Włącz Mod nagłówków:
sudo a2enmod headers
2) Utwórz plik /etc/apache2/mods-enabled/headers.conf
i wstaw:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
3) zrestartuj serwer:
sudo service apache2 restart
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-07 08:01:04
BTW: the .konfiguracja htaccess musi być wykonana na serwerze hostującym API. Na przykład tworzysz aplikację AngularJS na x.com domeny i stwórz Rest API na y.com, powinieneś ustawić Access-Control-Allow-Origin " * " w .plik htaccess w katalogu głównym y.com nie x.com :)
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
Również jak Lukas wspomniał upewnij się, że masz włączone mod_headers jeśli używasz Apache
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-27 22:43:02
Upewnij się, że nie masz przekierowania. Może się to zdarzyć, jeśli nie umieścisz końcowego ukośnika w adresie URL.
Zobacz tę odpowiedź Po Więcej Szczegółów – https://stackoverflow.com/a/27872891/614524
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:38