
Ich habe cPanelA mit Website A … mit Subdomäne A1 – alles funktioniert ordnungsgemäß.
Ich habe ein neues cPanelB mit Website B erstellt … und muss die Subdomäne A1 als Subdomäne B1 zu cPanel B verschieben.
Website B funktioniert...aber nachdem ich die gesamte Subdomain A1 nach cPanel B kopiert habe, kann ich Subdomain B1 nicht zum Laufen bringen. Es kommt immer wiederForbidden - you don't have permission to access this resource
In cPanelB habe ich überprüft, dass alle Datei-/Verzeichnisbesitzer korrekt sind. Ich habe überprüft, dass alle Dateiberechtigungen korrekt sind (0644 für Dateien und 0755 für Verzeichnisse). Ich habe überprüft, dass PHP für das neue cPanel aktiviert ist (über WHM). Nach mehr als einer Stunde der Frustration habe ich dann überprüft, dass die Dateistruktur/Berechtigungen/Besitzer der Subdomäne B1 mit denen der Subdomäne A1 identisch waren.
Ich habe die .htaccess-Dateien von Website A und Subdomain A1 auf Website B und Subdomain B kopiert – und dann alle Domain-Referenzen auf die neue Subdomain/Domain B geändert. Ich glaube also nicht, dass es an meinen .htaccess-Dateien liegt … sie scheinen tatsächlich zu funktionieren, weil die Stammdatei /www/.htaccess
neu geschrieben wurde, um auf den Subdomain-Ordner zu verweisen /www/club
, und ich kann im Browser sehen, dass sie tatsächlich zur Subdomain B gelangt.
Ich weiß, dass das wahrscheinlich ziemlich langwierig wird, aber mir fallen keine Ideen mehr ein, was das Problem sein könnte.
www/.htaccess:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^api\. [NC]
RewriteRule !^api/ api%{REQUEST_URI} [L,NC] // api.domainB.com
RewriteCond %{HTTP_HOST} ^portal\. [NC] // portal.domainB.com
RewriteRule !^club/ portal%{REQUEST_URI} [L,NC]
Options -Indexes
SetEnvIf X-Rquested-With com.domainB domainB
#AddType application/x-httpd-php7 .html .htm
ErrorDocument 404 https://www.domainB.com/errorpage.html
# file upload info
DirectoryIndex index.html index.htm index.php
AddHandler application/x-httpd-ea-php73 .php .html .htm .phtml
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php73” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit
www/club/.htaccess für: portal.domainB.com
RewriteEngine On
RewriteCond %{HTTP_HOST} !^portal\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteRule ^ - [F]
#AddType application/x-httpd-php5 .html .htm
DirectoryIndex index.html index.htm index.php
Header set Access-Control-Allow-Origin "*"
AddHandler application/x-httpd-ea-php73 .php .html .php7 .phtml
ErrorDocument 404 https://portal.domainB.com/errorpage.html
# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php73” package as the default “PHP” programming language.
<IfModule mime_module>
AddHandler application/x-httpd-ea-php73 .php .php7 .phtml .html
</IfModule>
# php -- END cPanel-generated handler, do not edit
Antwort1
Nun, ich habe es herausgefunden. Bin heute Morgen mit einer Ahnung aufgewacht und es stellte sich heraus, dass das das Problem war.
RewriteRule ^ - [F]
Diese Zeile führt zu einem 403 Forbidden
Fehler. Ich habe dieselbe .htaccess-Datei auf api.domainA.com angewendet und sie nach api.domainB.com kopiert, was ebenfalls korrekt war. Ich habe aber auch die .htaccess-Datei von api.domainB.com nach portal.domainB.com kopiert und diese Subdomain erfordert eine Benutzeranmeldung, aber [F]
die Anmeldeseite wurde dadurch nicht angezeigt.