Я создаю веб-сайт в Laravel 5.2 и вместо того, чтобы создавать форум с нуля, я хочу установить такой, как SMF.
Laravel в настоящее время находится в корневом каталоге моего веб-сервера, и я хочу сохранить его там, так как я хочу установить SMF в папку.
Например: www.example.com/smf
Я думаю установить его в Laravel’s /public
папку, но я боюсь, что они будут конфликтовать друг с другом. Это /public
папка — правильное место для установки SMF и нужно ли использовать маршрут для указания папки SMF?
Сервер: D.O дроплет через Laravel Forge
Вам нужно добавить пользовательские правила для папок, которые вы хотите использовать до Правила, связанные с Laravel:
location /smf/index.php(/.*)?$ {
fastcgi_split_path_info ^(/smf/index.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 1000;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
}
location /smf/ {
if (!-e $request_filename) {
rewrite ^.*$ /smf/index.php last;
}
try_files $uri $uri/ smf/index.php?args;
}
Пожалуйста, посмотрите образец Конфигурационный файл nginx здесь.
Вы можете использовать Nginx для перенаправления www.example.com/smf
к вашей установке SMF. Для этого добавьте это в свой server
блок:
location /smf {
# nginx will concatenate the string above with the root value
# so your SMF files should be in "/path/to/smf/parent/dir/smf".
# Make sure that Nginx can access them.
root "/path/to/smf/parent/dir";
# change this config to suit your needs
index index.php index.html index.htm;
location ~ \.php$ {
# Here use the same config from the server block that allows you
# to execute PHP scripts
fastcgi_pass 127.0.0.1:9123;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Несколько вещей, которые я должен добавить: