如何配置 全部是
server {
listen 80;
server_name localhost;
# location / {
# root /usr/share/nginx/html;
# index index.html index.htm index.php;
# }
# location ~ \.php$ {
# # 注意 这里是 php 的挂载目录哦
# fastcgi_pass myphp:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
# fastcgi_param SCRIPT_NAME $fastcgi_script_name;
# include fastcgi_params;
# }
location / {
root html;
index index.php;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
location ~ [^/]\.php(/|) {
# 注意 这里是 php 的挂载目录哦
fastcgi_pass myphp:9000;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/public$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
}
}
第一个事情就是 .php都 默认去访问文件/var/www/html/public下的文件 去这里找
location ~ [^/]\.php(/|) {
# 注意 这里是 php 的挂载目录哦
fastcgi_pass myphp:9000;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/public$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include fastcgi_params;
}
第二个事情是 全部的url都给我转到 /index.php上去 ,比如/user/get 全都转发到index.php
location / {
root html;
index index.php;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}