Ein öffentliches WeChat-Konto, das ursprünglich in der Winserver-Apache-Umgebung gut funktionierte, wurde in die Alibaba Cloud (Umgebung: Ubuntu 64-Bit | PHP5.4 | Nginx1.6) migriert, erhielt jedoch häufig 404- und 403-Fehler und konnte nur auf CI-Routen zugreifen . Es gab Probleme wie den in PHP eingestellten Standard-Controller. Später habe ich nachgesehen, dass es sich um ein Problem mit den Routing-Einstellungen handeln könnte, und habe das Problem schließlich gelöst, indem ich die folgenden Einstellungen befolgt habe.
1. Website-Konfigurationsdatei ändern
<span>server { 2 listen 80; 3 server_name<span> example.com</span>;//自己的域名 4 5 root <span>/alidata/www/example</span>;//网站目录 6 index index.php index.htm index.html; 7 8 location / { 9 try_files $uri $uri/ /index.php; 10 } 11 12 location /index.php{ 13 fastcgi_pass 127.0.0.1:9000; 14 fastcgi_param SCRIPT_FILENAME <span>/alidata/www/example/index.php</span>; 15 <span> fastcgi_param PATH_INFO $fastcgi_path_info;</span> 16 fastcgi_split_path_info ^(.+\.php)(.*)$; 17 fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; 18 include fastcgi.conf; 19 } 20 21 }</span>
2. Ändern Sie die config.php-Datei von CI
$config['base_url'] = 'http://example.com/';
$config['uri_protocol'] = 'PATH_INFO';//Es scheint, dass REQUEST_URI auch funktionieren wird
$config['index_page'] = '';
3. Legen Sie Lese- und Schreibberechtigungen (777) für das Website-Stammverzeichnis und die folgenden Verzeichnisse fest
4. Starten Sie nginx neu
Das Obige stellt die Konfiguration des Codeigniter-Frameworks unter Nginx vor, einschließlich verschiedener Aspekte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.